Tue Jul 19 17:58:38 CEST 2011

Can I have let?

So is it just annoying, or is there something else going on?

  - not enforced, might miss a duplication
  - ugly, i'm not used to it
  - no Num class ("true" monad)
  + distinguish between share & dup (macro semantics)

Looks like I need to accept it really is a monad, and requires
threading.  The other approach (merging graphs) was very convenient
this way, because the expression structure is intact.

But is that structure really necessary?  Most of the magic I want to
use is Applicative, so should work just fine.  Probably I just need to
start using it to fill in the familiarity gaps..