Wed Jul 30 10:30:07 BST 2008

associativity after instantiation

Working on the staapl/pic18 documentation... There's one thing I'm
noticing now: the highlevel semantics talks about associativity. This
is true for composition of macros, due to associativity of function
compositon. However, this property is NOT conserved through

    I(C(x,y)) != C(I(x),I(y))

C = concatenation
I = instantiation

Actually, this property is essential for some optimizations that
expose 'observable' code: jump targets. This is why the chain
splitting is so important in the instantiation step.