LAST CALL to comment on the Appicative/Monad Proposal

Philippa Cowderoy flippa at flippac.org
Tue Dec 18 10:42:14 UTC 2018


I'm having a moment of fail trying to work out how to leave a comment.

Is there a reason (other than GHC not doing it yet) not to have do 
notation use *> instead of >> in line with using the least restrictive 
function? I have some otherwise-nice logic programming code that would 
actively benefit from it and it seems like a missing step from here.

On 15/12/2018 23:46, Mario Blažević wrote:
> The very first RFC created (https://github.com/haskell/rfcs/pull/1), 
> the Applicative/Monad Proposal, has now reached the Last Call stage. 
> In order to ground the discussion, I have taken some time to update 
> the Prelude and the text of the Haskell Report with its effects before 
> the call. The rendered report is available at 
> https://github.com/blamario/rfcs/blob/amp/report/report/haskell.pdf 
> for your review.
>
>
> TL;DR:
>
> The proposed changes to the report add the latest design of the 
> Applicative and Alternative classes, but otherwise are intentionally 
> minimal. Any further modifications, like the MonadFail proposal or 
> moving return out of the Monad class, should be relegated to new RFCs.
>
>
> In some more detail, the changes are:
>
> 1. Applicative has been added as a subclass of Functor and superclass 
> of Monad, its methods and laws as currently defined in the base 
> library. The class and all its methods (pure, (<*>), (<*), (*>), and 
> liftA2) are exported from Prelude, but no other Applicative-related 
> functions (like liftA3) are.
>
> 2. The Functor class definition has been moved from module 
> Control.Monad to Control.Applicative in order to avoid circular 
> imports. Note that neither module is a part of the language 
> specification.
>
> 3. The Monad class has been left unmodified, apart from making 
> Applicative its superclass and adding  return a == pure a  as a law.
>
> 4. Alternative has been added to the Control.Applicative module, but 
> not to Prelude. This is the same treatment already meted to MonadPlus. 
> I'm unsure why MonadPlus even exists in the report, as it has no 
> relevance to the language specification, and I would gladly remove 
> both classes.
>
>
> Please take some time within the following three weeks (including some 
> extra allowance for the upcoming holiday breaks) to vote for or 
> against the proposal, or to leave a comment with suggestions for its 
> improvement.
>
>
> _______________________________________________
> Haskell-prime mailing list
> Haskell-prime at haskell.org
> http://mail.haskell.org/cgi-bin/mailman/listinfo/haskell-prime


More information about the Haskell-prime mailing list