Simon says, 

  > Sorry, I don't understand option 2, can you please explain?

        * Eliminate MonadZero
        * Add 'mfail :: m a' to Monad, with a suitable default decl
        * Every do expression has a type in Monad

I must be dense this morning, as I'm still in the dark.  What is the
intended meaning of `mfail'?  If `mfail' is `mzero', why change the
name?  What is the suitable default declaration?  What, if anything,
does `mfail' have to do with `do' expressions?  -- P


Reply via email to