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
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
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.
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,
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
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
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