Fri Aug 10 22:43:54 EDT 2018

Assignment language

So is it possible to do this actually?

if foo
  a <- 1
  a <- 2

No.  Those are still bindings.  It would need to be:

a <- signal
if foo
   connect a 1
   connect a 2

So I am really stuck with the pure approach.

Or not?  Here's an idea: when entering diverging blocks, a local
context can be built up that keeps track of the guards of the
conditional expression.  Once the full expression is evaluated, all
the guards can be gathered and an update network can be constructed
for a particular variable.

Still I wonder if it is really that useful.  It seems like a lot of
cruft.  Maybe there is something to say for better factoring?

EDIT: Do not waste time on this.