Monad of no `return` Proposal (MRP): Moving `return` out of `Monad`

John Wiegley johnw at
Sun Sep 27 00:35:34 UTC 2015

>>>>> Richard Eisenberg <eir at> writes:

> I'm leery of the breakage that this would cause. But, there has been no
> chorus of voices complaining about breaking changes in the recent past (AMP
> and changes to Typeable are top on my mind), so perhaps our community is
> more tolerant of breakage than I would guess.

Also, the breakage argument never resolves itself with time, so if it's always
heeded, we simply cannot progress toward the solution most of us would have
chosen from the beginning, had we foreknowledge of things to come. I think
it's a great thing we're enduring the pain now to correct past decisions, and
move toward a cleaner theoretic foundation.

As for pure vs. return: What I like about 'pure' is that it declaratively says
something about the value, rather than the action constructed from that value.
It says "this action has no other semantics than what can be determined from
the value itself".


More information about the Libraries mailing list