4.1 Sources structure

4.1.1 src/c

alloc_2.dmemory allocation based on the Boehm GC
all_symbols.dname mangler and symbol initialization
apply.dinterface to C call mechanism
arch/*architecture dependant code
array.darray routines
assignment.cassignment
backq.dbackquote mechanism
big.dbignum routines based on the GMP
big_ll.dbignum emulation with long long
cfun.dcompiled functions
cfun_dispatch.dtrampolines for functions
character.dcharacter routines
char_ctype.dcharacter properties.
cinit.dlisp initialization
clos/accessor.ddispatch for slots
clos/cache.dthread-local cache for a variety of operations
clos/gfun.ddispatch for generic functions
clos/instance.dCLOS interface
cmpaux.dauxiliaries used in compiled Lisp code
compiler.dbytecode compiler
cons.dlist manipulation macros & functions (auto generated)
disassembler.dbytecodes disassembler utilities
dpp.cdefun preprocessor
ecl_constants.hconstant values for all_symbols.d
ecl_features.hnames of features compiled into ECL
error.derror handling
eval.devaluation
ffi/backtrace.dC backtraces
ffi/cdata.ddata for compiled files
ffi/libraries.dshared library and bundle opening / copying / closing
ffi/mmap.dmapping of binary files
ffi.duser defined data types and foreign functions interface
file.dfile interface (implementation dependent)
format.dformat (this isn’t ANSI compliant, we need it for bootstrapping though)
hash.dhash tables
interpreter.dbytecode interpreter
iso_latin_names.hcharacter names in ISO-LATIN-1
list.dlist manipulating routines
load.dbinary loader (contains also open_fasl_data)
macros.dmacros and environment
main.decl boot process
Makefile.inMakefile for ECL core library
mapfun.dmapping
multival.dmultiple values
newhash.dhashing routines
num_arith.darithmetic operations
number.dconstructing numbers
numbers/*.darithmetic operations (abs, atan, plusp etc)
num_co.doperations on floating-point numbers (implementation dependent)
num_log.dlogical operations on numbers
num_pred.dpredicates on numbers
num_rand.drandom numbers
package.dpackages (OS dependent)
pathname.dpathnames
predicate.dpredicates
print.dprint
printer/*.dprinter utilities and object representations
read.dreader
reader/parse_integer.d
reader/parse_number.d
reference.dreference in Constants and Variables
sequence.dsequence routines
serialize.dserialize a bunch of lisp data
sse2.dSSE2 vector type support
stacks.dbinding/history/frame stacks
string.dstring routines
structure.dstructure interface
symbol.dsymbols
symbols_list.hThe file has contains all symbols defined in the core.
tcp.dstream interface to TCP
time.dtime routines
typespec.dtype specifier routines
unicode/*unicode definitions
unixfsys.dUnix file system interface
unixint.dUnix interrupt interface.
unixsys.dUnix shell interface
vector_push.dvector optimizations
threads/atomic.datomic operations
threads/barrier.dwait barriers
threads/condition_variable.dcondition variables for native threads
threads/mailbox.dthread communication queue
threads/mutex.dmutually exclusive locks.
threads/process.dnative threads
threads/queue.dwaiting queue for threads
threads/rwlock.dPOSIX read-write locks
threads/semaphore.dPOSIX-like semaphores