Wed Jun 11 17:37:45 CEST 2008
.. to later remember why some decisions are taken
* it's important to have purely functional macros + some abstract way
of handling the threaded state.
* for the parser i've opted not to, because this purely functional
infrastructure is not necessary: it's merely a frontend for forth
code, and has a composition mechanism in the form of substitution
macros. internally it uses an explicit serial interpreter ('next'
* i'm trying to find a good trade-off between low-level control
(i.e. raw jump tables, where the language is basicly an assembler)
and high-level code analysis and manipulation, which serve as the
basis for high-level metaprogramming constructs.
* yes, i like to split the code in chunks of about 300 lines