Monad of no `return` Proposal (MRP): Moving `return` out of `Monad`
Bardur Arantsson
spam at scientician.net
Sat Oct 3 09:06:55 UTC 2015
On 10/03/2015 03:01 AM, Henrik Nilsson wrote:
> Hi all,
>
> Bardur Arantsson wrote:
>
>> I should also say: I certainly *understand* the
>> textbook argument, [...] but this is not a good
>> *general* argument against change.
>
> Just to be clear, Graham and I were not at all arguing
> against change in general. But we are, in general,
> urging extreme caution when it comes to non-essential
> breaking changes.
>
> Measuring breakage by referring to Hackage is just the
> tip of the iceberg. Much breakage, including
> proprietary code, books, research papers, what people
> have learned, is very difficult or impossible to
> measure. Somehow this point seems to have been
> forgotten in the present discussion. The reason there
> has to be really compelling reasons for adopting
> breaking changes is exactly because the full impact of
> those breaking changes is very hard to gauge properly. As
> to this specific proposal, in our opinion, the reasons
> put forward so far for the "monad of no return" are not
> very compelling. And therefore it should not be adopted
> at this point.
>
>> Have you surveyed the actual number of books out
>> there which show how to implement Monad instances and
>> how many of them would be affected?
>
> No. we have not. But ought not the burden of proof rest
> with those who are proposing a non-essential breaking
> change? If not, why not?
>
>> but if we're going that way, then we're going to end
>> up like C++... before C++11/C++14. [...] (stagnatiation)
>
> We are hardly going to end up like C++ in that sense by
> being very careful before adopting non-essential
> breaking changes. Or even rule them out. Nor, returning
> to this specific proposal, is leaving "return" as a
> method of "Monad" going to mean that Haskell ends
> up being stagnant.
>
> Further, it is also worth noting that by almost any
> measure C++ is an extremely successful language despite
> its warts.
>
C++ is what "success at all cost" looks like. (I won't bother responding
to the rest, others have done that adequately.)
Look, I truly[1] do appreciate the arguments in favor of "don't break
things", but I don't think it's borne out by any reasonable reading of
history.
Regards,
[1] At least I think I do. :)
More information about the Libraries
mailing list