Sun May 9 11:03:52 EDT 2010


   * Ai, Term, Procedure, Flatten, Complex are linked together in
     DFL.hs; separation of concerns:

       Term      : tree/graph representation
       Ai        : algebraic operations for Term
       Procedure : low level SSA representation for cod gen
       Flatten   : conversion from tree/graph to flat SSA form

       Complex   : tests composite algebraic operations with Term

   * The Procedure generation does not use external output allocation
     : there is one level of indirection that uses Input / Ouput
     instructions and internal temp node allocation.  This can be
     eliminated in a target-specific way; solving assignment to
     caller-allocated variables generally seems to contain too many
     special cases.

   * The Flatten.hs code does not use memoization yet.  This can
     probably be postponed until it becomes a problem for large