[Haskell-cafe] Request to review my attempt at understanding
Monads
Jason Dusek
jason.dusek at gmail.com
Tue Dec 29 03:03:43 EST 2009
2009/12/28 CK Kashyap <ck_kashyap at yahoo.com>:
> 1. Comments about the functions I've written
Maybe your indentation was eaten by your mailer; but please
indent the operations within a `do' block and the definitions
under a `where'.
You should make a `Functor' instance since monads are all
functors (though the typeclass does not enforce this).
> 2. I've used the do notation at the bottom which is a result
> of my List being a Monad - are there any other benefits that
> comes in because of List being a Monad? What would MonadPlus
> provide me?
You can use `guard' and `when' and other monadic operations.
The `MonadPlus' instance gives you access to `msum'. It's not
just about `do' notation :)
> 3. The comprehension syntax for Lists in Haskell - can that be
> used in anyway for other Monads?
Not anymore, though Gofer used to allow "monad
comprehensions".
--
Jason Dusek
More information about the Haskell-Cafe
mailing list