Functor => Applicative => Monad
wren ng thornton
wren at freegeek.org
Mon Dec 6 20:54:57 CET 2010
On 12/6/10 9:48 AM, Conor McBride wrote:
>
> On 6 Dec 2010, at 14:09, John Smith wrote:
>
>> This proposal now has a Wiki page
>> http://haskell.org/haskellwiki/Functor-Applicative-Monad_Proposal
I, like Ashley Yakeley, prefer the name "return" for this context. The
name "pure" suggests that applicatives/monads are inherently impure,
when in fact they are generally pure. Also the name "return" was chosen
specifically because of its similarity to (in spite of its difference
from) the imperative keyword, as well as the suggestion of its forming
the simplest 'program'--- following the idea of monads as building up
programs for executing later. The name "pure" for applicatives has
historically conflicted with the similar function for the arrows class
(where I think "pure" is a better name than "arr"), and AFAIK
applicatives took the name largely because they couldn't reuse "return".
Also, there's a difference between breaking legacy code for legitimate
improvements (e.g., Applicative=>Monad) vs breaking it just for the sake
of breaking it.
--
Live well,
~wren
More information about the Libraries
mailing list