11 Jun
2010
11 Jun
'10
5:36 a.m.
Lennart Augustsson wrote:
I would not use the continuation monad just for early exit. Sounds like the error monad to me.
I.e., the Either/ErrorT monad. But the mtl/transformers packages have an orphan instance for Either that requires the exit type to be an instance of the Error class. If that doesn't work in your case, use the Exit monad: http://www.haskell.org/haskellwiki/New_monads/MonadExit Or use the Maybe monad written additively, i.e. mplus in place of >> (more or less). Regards, Yitz