Wed Apr 9 19:57:49 EDT 2008

static vs. dynamic

i don't know whether this is mostly bias, but it seems that using a
bottom-up approach instead of an ad-hoc, late-bound approach makes
things easier to understand.

i.e.: i didn't realize that the "delay evaluation until assembly time"
is really ONLY about values of target code and data addresses:
everything else can be evaluated earlier. previously this was handled
in a sort of ad-hoc way with evaluation of macros and assembler

so, what about the assembler? should it be static (which needs some
magic in the pattern transformer) or stick to the symbolic approach?
maybe some middle road: names handled statically, and the rest done
with structure instances.