Folks,
I'm trying to monadify http://research.microsoft.com/~akenn/fun/
picklercombinators.pdf
appU is easy but I can't figure out the appP. Is it actually
possible? The clever trick seems to be the passing of (b -> a) into
sequ for use in appP.
--
instance Monad (PU s) where
return a = PU snd (\s -> (a, s))
-- how do I do appP below?
pa >>= k = PU (\(b, s) -> let pb = k a
in appP pa (a, ???
-- this is good
(\s -> let (a, s1) = appU pa s
pb = k a
in appU pb s1)
Thanks, Joel
--
http://wagerlabs.com/
_______________________________________________
Haskell-Cafe mailing list
[email protected]
http://www.haskell.org/mailman/listinfo/haskell-cafe