Fri Feb 16 10:23:00 GMT 2007
so the basic infrastructure is there, now i just need to figure out
how to put the pieces together. this host/target separation needs some
the problem i'm facing atm is 'constant'. this should define a
constant as soon as it's parsed, but the value comes from partial
evaluation which happens at macro execution time!
maybe i shouldn't really care about this 2-pass stuff.. i can just
compile code for it's side effects, being the definition of macros..
another thing, which is related to the comment about the asm buffer
being a second parameter stack: why not compile quoting words as
literals instead of loading them on the data stack? this way a simple
pattern matching macro can be used to implement the behaviour of
i have to be careful though, since this arbitrary freedom must have
some hidden constraint somewhere..
the hidden constraint is of course: literal stack encoding is
machine-dependent! it's actual assembler dude!
maybe keep it the way it is, however, 'forth-quoted' feels wrong. also
the combination of literals coming from the asm buffer, and the symbol
coming from the stack, feels awkward. but it does seem to be the right
anyways.. it seems to work now.