Re: PROPOSAL: Make Applicative a superclass of Monad

2008-06-30 Thread Isaac Dupree
Ashley Yakeley wrote: For example: class Functor f = Applicative f where return :: a - f a ap :: f (a - b) - f a - f b () :: f a - f b - f b () = liftA2 (const id) for backwards compatibility of everyone who *uses* Applicative, (and arguably it is a less ugly notation,) : (*) = ap

Re: PROPOSAL: Make Applicative a superclass of Monad

2008-06-29 Thread Iavor Diatchki
Hello, I think that this is a good change to make, and I don't think that it is in any way related to the introduction of class aliases, which is a fairly major extension (i.e., it requires changes to the compiler), that we have no experience with, and whose design has not really be tried out in

Re: PROPOSAL: Make Applicative a superclass of Monad

2008-06-27 Thread Neil Mitchell
Hi So does the silence = approval rule apply here? 2 days is not enough time :-) I disagree, its a breaking change from Haskell 98. It also means that if you want to provide syntactic sugar for do notation, i.e. my Test monad, you have to jump through more hoops.

RE: PROPOSAL: Make Applicative a superclass of Monad

2008-06-27 Thread Sittampalam, Ganesh
Haskell' is about fixing existing practice, if it did go in, you would need some mechanism (i.e. class aliases) to ensure that it didn't break code. ... which is why we need class aliases!! I want to see this change, *and* I want to see class aliases. :-) I want class aliases,

Re: PROPOSAL: Make Applicative a superclass of Monad

2008-06-27 Thread John Meacham
On Thu, Jun 26, 2008 at 06:25:28PM -0700, Ashley Yakeley wrote: I wrote: Proposal: Make Applicative (in Control.Applicative) a superclass of Monad (in Control.Monad). So does the silence = approval rule apply here? I think that people believe this is generally a good idea, but until the

Re: PROPOSAL: Make Applicative a superclass of Monad

2008-06-26 Thread Ashley Yakeley
I wrote: Proposal: Make Applicative (in Control.Applicative) a superclass of Monad (in Control.Monad). So does the silence = approval rule apply here? -- Ashley Yakeley ___ Haskell-prime mailing list Haskell-prime@haskell.org

PROPOSAL: Make Applicative a superclass of Monad

2008-06-24 Thread Ashley Yakeley
I had proposed this to the GHC Trac, but it was pointed out that it would break Haskell 98. That proposal has been closed. Proposal: Make Applicative (in Control.Applicative) a superclass of Monad (in Control.Monad). Rename members of Applicative and other functions, to avoid unnecessary