Thu Aug 27 19:12:49 CEST 2009
Monad transformers / Arrows
I'm interested to find out the link between:
State threading using Monads and Arrows
Monad / Arrow transformation (building new such constructs by
composing the others).
More specifically, I've run into the case in concatenative programming
where you want to thread things different from the stack, and where
you also want to combine different threading mechanisms (i.e. a data
stack and a compilation `writer' monad).
However, the way (i understand) that monad transformers work is that
you always need to pick an _order_ of wrapping: it isn't a
side-by-side thing like i.e. linear operators and vector subspaces.
My hunch is that the latter is about Arrows.