Wed Aug 17 09:37:45 CEST 2011

Arrows to Monads: different SSM representation.

The "hiding behind input" problem I ran into in the arrow -> monad
conversion might be solved by representing the state machines as

  i -> (s, s -> (s, o))

instead of

  (s, (s, i) -> (s, o))

This way the isomorphism to

  i -> () -> (s, s -> (s, o))

can probably be expressed.