slimlog compiles a lisp-like language to mlog
Documentation can be found in the docs directory
slimlog is divided into three distinct parts
- Parser
- Parses the source file
- Compiler
- Compiles statements into instructions
- May perform compile-time optimisations
- Translator
- Translates instructions to processor instructions
- May perform translation-time optimisations (transopts)
Versions are whatever until 1.0.0 when all the major TODOs are completed
Originally called mlogs, but slimlog was suggested by a very important Indian friend of mine, so I changed it while I still could
At this point, the parser is functional, it will parse programs just fine, but it will not report any kind of syntax error whatsoever, instead handing out a cryptic error message
The compiler is functional, but it will not report the location of compilation errors yet
- Proper parser errors
- All processor instructions
- Documentation
- Virtual processor
- Performance analysis
- Potentially verify optimisation correctness
There is still a lot to do