Sun Oct 9 14:43:47 EDT 2011
CBN & CBV
Is it possible to use a simple interface to abstract over both these
types of binary operators:
a -> b -> M c
M a -> M b -> M c
This would make it possible to combine nested expressions (unnamed
intermediates) and explicit bindings using the same interface.
Something that might work is this:
mi a -> mi b -> mo c
Where we can have mi = mo or mi = 1, the identity monad. Let's play
with this a bit.
It seems that this would work, but there is a problem making it
implicit. I.e. the identity monad would always need a wrapper.
Overall it seems just simpler to work with (M a -> M b -> M c)
functions and use an explicit return when binding nodes. See before.