Part I. Standards

Table of Contents

1. Overview
1.1. Reading this manual
1.1.1. Common Lisp users
1.1.2. C/C++ programmers
1.2. C Reference
1.2.1. One type for everything: cl_object
1.2.2. Naming conventions
1.2.3. Only in Common Lisp
2. Evaluation and compilation
2.1. Declarations
2.1.1. OPTIMIZE
2.2. C Reference
ecl_process_env — Per-thread environment
ANSI Dictionary — Common Lisp and C equivalence
3. Types and classes
3.1. C Reference
ANSI Dictionary — Common Lisp and C equivalence
4. Data and control flow
4.1. Minimal compilation
4.2. Function types
4.3. C Calling conventions
4.4. C Reference
ecl_bds_bind — Bind a special variable
ecl_bds_unwind — Undo one variable binding
ecl_setq — C equivalent of setq
ecl_symbol_value — C equivalent of symbol-value
ecl_va_arg — Accepting a variable number of arguments
ecl_nth_value, ecl_nvalues — Accessing output values
ecl_return0, ecl_return1, ... — Returning multiple values
ECL_BLOCK_BEGIN — C macro for block
ECL_CATCH_BEGIN — C macro for catch
ECL_UNWIND_PROTECT_BEGIN — C macro for unwind-protect
ANSI Dictionary — Common Lisp and C equivalence
5. Structures
5.1. C Reference
ANSI Dictionary — Common Lisp and C equivalence
6. Conditions
6.1. C Reference
ECL_HANDLER_CASE — C macro for handler-case
ECL_RESTART_CASE — C macro for restart-case
Conditions C dictionary — Common Lisp and C equivalence
7. Objects
7.1. C Reference
ANSI Dictionary — Common Lisp and C equivalence
8. Symbols
8.1. C Reference
ecl_make_keyword — Find a lisp keyword
ecl_make_symbol — Find a lisp symbol
ANSI Dictionary — Common Lisp and C equivalence
9. Packages
9.1. C Reference
ANSI Dictionary — Common Lisp and C equivalence
10. Numbers
10.1. Numeric types
10.2. Random-States
10.3. C Reference
Number C types — Numeric C types understood by ECL
Number constructors — Creating Lisp types from C numbers
Number accessors — Unchecked conversion from Lisp types to C numbers
Number coercion — Checked conversion from Lisp types to C numbers
Numbers C dictionary — Common Lisp and C equivalence
11. Characters
11.1. Unicode vs. POSIX locale
11.1.1. Character types
11.1.2. Character names
11.2. #\Newline characters
11.3. C Reference
C types — C character types
Constructors — Creating and extracting characters from Lisp objects
Predicates — C predicates for Lisp characters
Character case — C functions related to the character case
ANSI Dictionary — Common Lisp and C equivalence
12. Conses
12.1. C Reference
ANSI Dictionary — Common Lisp and C equivalence
13. Arrays
13.1. Array limits
13.2. Specializations
13.3. C Reference
Types and constants — C types, limits and enumerations
ecl_aet_to_symbol, ecl_symbol_to_aet — To and from element types
Constructors — Creating arrays and vectors
Accessors — Reading and writing array elements
Array properties — Array size, fill pointer, etc
ANSI Dictionary — Common Lisp and C equivalence
14. Strings
14.1. String types & Unicode
14.2. C Reference
Base string constructors — Building strings for C data
String accessors — Reading and writing characters into a string
Strings C dictionary — Common Lisp and C equivalence
15. Sequences
15.1. C Reference
Sequences C dictionary — Common Lisp and C equivalence
16. Hash tables
16.1. C Reference
Hash tables C dictionary — Common Lisp and C equivalence
17. Filenames
17.1. Syntax
17.2. Wild pathnames and matching
17.3. C Reference
Filenames C dictionary — Common Lisp and C equivalence
18. Files
18.1. Dictionary
18.1.1. DIRECTORY
18.2. C Reference
Files C dictionary — Common Lisp and C equivalence
19. Streams
19.1. ANSI Streams
19.1.1. Supported types
19.1.2. Element types
19.1.3. External formats
19.2. C Reference
Streams C dictionary — Common Lisp and C equivalence
20. Printer
20.1. C Reference
ANSI Dictionary — Common Lisp and C equivalence
21. Reader
21.1. C Reference
ANSI Dictionary — Common Lisp and C equivalence
22. System Construction
22.1. C Reference
ANSI Dictionary — Common Lisp and C equivalence
23. Environment
23.1. Dictionary
disassemble — Display the assembly code of a function
trace — Follow execution of functions
23.2. C Reference
ANSI Dictionary — Common Lisp and C equivalence