[Haskell-cafe] Monad of no `return` Proposal (MRP): Moving `return` out of `Monad`

Nathan Bouscal nbouscal at gmail.com
Mon Oct 5 18:50:27 UTC 2015

I'm a strong +1 on this (and on Edward's addendum to it), and I object to
the characterization of this change as having only trivial benefits.
Simplicity and correctness are never trivial. In my view, disagreement on
*how* this change is made (migration strategy, etc.) is completely
reasonable, but disagreement on *whether* to make it is not.

There have been a lot of objections based on the idea that learners will
consult books that are out of date, but the number of learners affected by
this is dwarfed by the number of learners who will use updated materials
and be confused by this strange historical artifact. Permanently-enshrined
historical artifacts accrete forever and cause linear confusion, whereas
outdated materials are inevitably replaced such that the amount of
confusion remains constant.

There was also an argument that Haskell has a “window of opportunity”,
implying that breakages are more likely to cost us future valued community
members than historical artifacts are. I couldn't disagree more. If it
weren't for Haskell's past willingness to make changes when we learned
better ways of doing things, I doubt I would presently be using the
language. I would much rather add a marginal community member with a strong
preference for cleanliness, simplicity, and correctness than one with a
strong preference against making occasional small changes to their code.

On Mon, Oct 5, 2015 at 6:28 PM, Dimitri DeFigueiredo <
defigueiredo at ucdavis.edu> wrote:

> +1
> I think this idea is good and should not be taken lightly. I'm a newcomer
> to the community and currently hold a grand total of *zero* open source
> contributions. Obviously, I would like to change this soon, but I think it
> is very *unfair* and makes absolutely no sense to have the standard one
> person one vote rule for decisions involving the libraries.
> Let the code produced vote. Maybe weight them by downloads?
> Dimitri
> On 10/5/15 9:12 AM, Johan Tibell wrote:
> Perhaps we should weigh the +1 and -1s in this thread with the number of
> lines of Haskell written by the voter? ;)
> On Mon, Oct 5, 2015 at 5:09 PM, Gershom B <gershomb at gmail.com> wrote:
>> On October 5, 2015 at 10:59:35 AM, Bryan O'Sullivan (bos at serpentine.com)
>> wrote:
>> > I would like to suggest that the bar for breaking all existing
>> libraries, books, papers,
>> > and lecture notes should be very high; and that the benefit associated
>> with such a breaking
>> > change should be correspondingly huge.
>> >
>> My understanding of the argument here, which seems to make sense to me,
>> is that the AMP already introduced a significant breaking change with
>> regards to monads. Books and lecture notes have already not caught up to
>> this, by and large. Hence, by introducing a further change, which
>> _completes_ the general AMP project, then by the time books and lecture
>> notes are all updated, they will be able to tell a much nicer story than
>> the current one?
>> As for libraries, it has been pointed out, I believe, that without CPP
>> one can write instances compatible with AMP, and also with AMP + MRP. One
>> can also write code, sans CPP, compatible with pre- and post- AMP.
>> So the reason for choosing to not do MRP simultaneous with AMP was
>> precisely to allow a gradual migration path where, sans CPP, people could
>> write code compatible with the last three versions of GHC, as the general
>> criteria has been.
>> So without arguing the necessity or not, I just want to weigh in with a
>> technical opinion that if this goes through, my _estimation_ is that there
>> will be a smooth and relatively painless migration period, the sky will not
>> fall, good teaching material will remain good, those libraries that bitrot
>> will tend to do so for a variety of reasons more significant than this, etc.
>> It is totally reasonable to have a discussion on whether this change is
>> worth it at all. But let’s not overestimate the cost of it just to further
>> tip the scales :-)
>> —gershom
>> _______________________________________________
>> Libraries mailing list
>> Libraries at haskell.org
>> http://mail.haskell.org/cgi-bin/mailman/listinfo/libraries
> _______________________________________________
> Haskell-Cafe mailing listHaskell-Cafe at haskell.orghttp://mail.haskell.org/cgi-bin/mailman/listinfo/haskell-cafe
> _______________________________________________
> Haskell-Cafe mailing list
> Haskell-Cafe at haskell.org
> http://mail.haskell.org/cgi-bin/mailman/listinfo/haskell-cafe
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.haskell.org/pipermail/haskell-cafe/attachments/20151005/f5391a70/attachment-0001.html>

More information about the Haskell-Cafe mailing list