Good question. I've tried inventing a design pattern for monad transformers in F# and as yet I can't seem to come up with a viable one. F# uses monads with different design goals to Haskell and the need for monad transformers is much less important. In any case the problem is not with the computation expression syntax but with the typing of expressions in the transformed monad.

By on 1/25/2008 12:14 AM ()

Okay. To be honest, I haven't felt a need for a monad transformer-like facility in F#, either--the possibility of doing IO without a monad makes a big difference. I was merely curious. I suppose it would be hard to have a monad transformer when there isn't a generalized Monad type!

On the other hand, since someone can use computation expressions inside other computation expressions (after all, everything is de-sugared functions in the end), some good composability is there.

By on 1/25/2008 5:34 AM ()
IntelliFactory Offices Copyright (c) 2011-2012 IntelliFactory. All rights reserved.
Home | Products | Consulting | Trainings | Blogs | Jobs | Contact Us
Built with WebSharper