| alloc_2.d | memory allocation based on the Boehm GC | 
| all_symbols.d | name mangler and symbol initialization | 
| apply.d | interface to C call mechanism | 
| arch/* | architecture dependant code | 
| array.d | array routines | 
| assignment.c | assignment | 
| backq.d | backquote mechanism | 
| big.d | bignum routines based on the GMP | 
| big_ll.d | bignum emulation with long long | 
| cfun.d | compiled functions | 
| cfun_dispatch.d | trampolines for functions | 
| character.d | character routines | 
| char_ctype.d | character properties. | 
| cinit.d | lisp initialization | 
| clos/accessor.d | dispatch for slots | 
| clos/cache.d | thread-local cache for a variety of operations | 
| clos/gfun.d | dispatch for generic functions | 
| clos/instance.d | CLOS interface | 
| cmpaux.d | auxiliaries used in compiled Lisp code | 
| compiler.d | bytecode compiler | 
| cons.d | list manipulation macros & functions (auto generated) | 
| disassembler.d | bytecodes disassembler utilities | 
| dpp.c | defun preprocessor | 
| ecl_constants.h | constant values for all_symbols.d | 
| ecl_features.h | names of features compiled into ECL | 
| error.d | error handling | 
| eval.d | evaluation | 
| ffi/backtrace.d | C backtraces | 
| ffi/cdata.d | data for compiled files | 
| ffi/libraries.d | shared library and bundle opening / copying / closing | 
| ffi/mmap.d | mapping of binary files | 
| ffi.d | user defined data types and foreign functions interface | 
| file.d | file interface (implementation dependent) | 
| format.d | format (this isn’t ANSI compliant, we need it for bootstrapping though) | 
| hash.d | hash tables | 
| interpreter.d | bytecode interpreter | 
| iso_latin_names.h | character names in ISO-LATIN-1 | 
| list.d | list manipulating routines | 
| load.d | binary loader (contains also open_fasl_data) | 
| macros.d | macros and environment | 
| main.d | ecl boot process | 
| Makefile.in | Makefile for ECL core library | 
| mapfun.d | mapping | 
| multival.d | multiple values | 
| newhash.d | hashing routines | 
| num_arith.d | arithmetic operations | 
| number.d | constructing numbers | 
| numbers/*.d | arithmetic operations (abs, atan, plusp etc) | 
| num_co.d | operations on floating-point numbers (implementation dependent) | 
| num_log.d | logical operations on numbers | 
| num_pred.d | predicates on numbers | 
| num_rand.d | random numbers | 
| package.d | packages (OS dependent) | 
| pathname.d | pathnames | 
| predicate.d | predicates | 
| print.d | print | 
| printer/*.d | printer utilities and object representations | 
| read.d | reader | 
| reader/parse_integer.d | 
| reader/parse_number.d | 
| reference.d | reference in Constants and Variables | 
| sequence.d | sequence routines | 
| serialize.d | serialize a bunch of lisp data | 
| sse2.d | SSE2 vector type support | 
| stacks.d | binding/history/frame stacks | 
| string.d | string routines | 
| structure.d | structure interface | 
| symbol.d | symbols | 
| symbols_list.h | The file has contains all symbols defined in the core. | 
| tcp.d | stream interface to TCP | 
| time.d | time routines | 
| typespec.d | type specifier routines | 
| unicode/* | unicode definitions | 
| unixfsys.d | Unix file system interface | 
| unixint.d | Unix interrupt interface. | 
| unixsys.d | Unix shell interface | 
| vector_push.d | vector optimizations | 
| threads/atomic.d | atomic operations | 
| threads/barrier.d | wait barriers | 
| threads/condition_variable.d | condition variables for native threads | 
| threads/mailbox.d | thread communication queue | 
| threads/mutex.d | mutually exclusive locks. | 
| threads/process.d | native threads | 
| threads/queue.d | waiting queue for threads | 
| threads/rwlock.d | POSIX read-write locks | 
| threads/semaphore.d | POSIX-like semaphores |