Mon Mar 31 13:54:41 EDT 2008
.. and then i'm done.
: foo | a b c | c b a ;
first step is to make an anonymous version of the pattern language.
took some time, but got it. needed to clean up pattern language
transformer intermediate state.
the interesting thing now is that we basicly get multiple occurences
for free. if locals captures the 'state' argument of
(lambda (stack) (expr stack))
this is pretty straighforward:
* close the expression collected up to then
* apply it to the input state
* collect locals from this state
* bind locals to variables
* bind wrapper macros
* exand the rest of the code in this augmented lexical env.
EDIT: yes, but it took some detours ;)
it's working in the most generic version, with as much as possible in
the form of runtime support.