Fri May 25 22:36:48 EDT 2018
Just continue filling things out.
Start by only collecting register signals.
But how to represent a hole?
Basically, op2 ADD needs to apply a function to something.
What about inserting an environment into the monad, and using circular
This is a new idea: compile an entire network to a function taking
register state as input.
Done. Also managed to compute register init using circular programming.
What is missing is a good way to produce an output.
Currently, it needs machinery to untag the Emu.R wrapping and perform
register dereference in case the return value is Emu.R (Reg Int)
Unfortunate, but it seems a special "output" command will need to be
added to evaluate source code.
If it needs to be added, then make it into a list so it is generic.