next up previous contents
Next: Why not an Integrated Up: Choice of Design Preferences Previous: Parameter Passing

Why Off-Line Compilation ?

Unlike some other LISP implementations there does not exist a function like (COMPILE <fnname1> <fnname2> ...) in the normal interpreter part of this system. Instead of this there exists a separate LISP interpreter with the compiler present (and usually used only for compilation purpose). If this version (which is of course bigger in size) is called and ordered to compile a LISP source, the products are four files which contain the C code and explained in the section : The Compiler. This generated C code along with the C code for the interpreter will be C compiled using a MAKE utility. The choice made for the internal data structure is such that it disables partial compilation and linking (e.g. the symbol table for the build in functions is hold as a static array, therefore it is not expandable). These choices are done only for efficiency reasons. We believe the interpreter is sufficient for the development phase of a project and the very last move is the compilation, The code generated this way will be in most integrity.



Gokturk UCOLUK
Fri Nov 1 21:52:13 EET 1996