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

Michael Orlitzky michael at orlitzky.com
Fri Oct 9 14:09:59 UTC 2015

On 10/09/2015 09:42 AM, Sven Panne wrote:
> For toy stuff you might be right, but in any larger project I've seen in
> the last decades, keeping branches well maintained *is* non-trivial.
> Normally you already have branches for different releases of your SW you
> still have to maintain, and with the proposed approach you would
> effectively multiply the number of those branches by the number of
> supported platforms/compilers. Much fun proposing that to your
> manager... This might work if you have only linear development and few
> platforms, but otherwise it won't scale.
> Furthermore, having #ifdef-free code is a non-goal in itself: The goal
> we talk about is ease of maintenance, and as it's proposed, it makes a
> maintainer's life harder, not easier (you need much more steps +
> bookkeeping). And the merges e.g. only work automatically when the
> change in the #ifdef'd code would be trivial, too (adding/removing
> lines, etc.), so git doesn't offer any advantage.

It works, everyone else already does it, the complexity is there whether
you branch or not, you'll never have merge conflicts, etc. I'm not sure
how much effort you want me to expend convincing you to improve your
life. I don't have this problem.

Go try it instead of arguing that it can't possibly work.

More information about the Haskell-Cafe mailing list