Guide to MAL C89 (Make A Lisp)
Table of Contents (old & deprecated)
- Top
- Version 0x00 -- REPL
- Version 0x00 --
text_tand garbage collection - Version 0x00 -- lists and vectors
- Version 0x00 -- mal objects and errors
- Version 0x00 -- hashmap and reader macros
- Version 0x01 -- version up
- Version 0x01 -- environment and reworked hashmap
- Version 0x01 -- eval and builtins
- Version 0x02 -- version up
- Version 0x03 -- creating and modifying environments; version up
- Version 0x04 -- adding
if,fn*anddo; version up - Version 0x05 -- TCO (Tail Call Optimization); version up
- The first version of
MALproject using C89 standard. Responsive REPL environment.
- Preparation for second version,
text_tand garbage collector.
- Adding support for basic string
(un)escaping, new types (list_t/list_pandvector_t/vector_p), tokenizer and basic parser to the source code.
- Added basic support for
malobjects and custom error handling.
- Adding support for basic hashmap, updated tokenizer in the the source code.
- The second version of
MALproject using C89 standard. Reader, writer, lists, vectors, hashmaps ans reader macros. It is equivalent to version 0.0.4.
- Added Environment, edited hashmap implementation.
Added Eval stage, and some additional buitin functions.
- The third version of
MALproject using C89 standard. Environment, eval and some builtin functions. It is equivalent to version 0.1.2.
- The fourth version of
MALproject using C89 standard. Creating environment using special formlet*and modifying the current environment usingdef!special form.
- The fifth version of
MALproject using C89 standard. Added three new special formsif,fn*anddoand added some core functions.
- The sixth version of MAL project using C89 standard. Editing eval functions to support TCO (Tail Call Optimization).