Sat Feb 6 08:23:19 CET 2010
So, to build the ANF compiler, an equality operation for expressions
(run-time value nodes) is necessary.
- what is equality of references
- how to express references
Names are probably not a good idea yet
OK: got something going.
Now I'm thinking about removing Var (free variables) from the
environment struct. Putting it like that makes it rather obvious they
shouldn't be in there. Environment = intermediate nodes only.
Maybe it's not necessary to perform environment joins? It could be
done in a final pass over the whole expression tree. However, that
might lead to complexity explosion if no memoization is used.