Mon Aug 3 02:29:18 EDT 2015
figure out a way to define a representation that is a system, to
r t -> r t -> m (r t)
Basically, what does this mean:
f (m (r t)) -> m (f (r t))
A system with a (double wrapped) monadic output, maps to a monadic
value of a signal.
This should give interesting things like:
- compile once to get a Sys
- compile a second time to get Code
This should be the goal probably: every variable is a signal.
Rewrite Sys to use that approach?
Start out like that:
- Systems are defined in terms of Data
- Data is then again defined in terms of Systems (signals)
It seems that these are two layers that are otherwise implicit or
ambiguous in rai. In Haskell the types enforce explicit layers.