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

Michael Orlitzky michael at orlitzky.com
Wed Oct 7 17:34:21 UTC 2015

(replying to no one in particular)

This problem isn't specific to Haskell. In every other language, you
have projects that support major versions of toolkits, compilers,
libraries and whatnot. And there's already a tool for it: git.

Instead of using #ifdef to handle four different compilers, keep a
branch for each. Git is designed to make this easy, and it's usually
trivial to merge changes from the master branch back into e.g. the
ghc-7.8 branch. That way the code in your master branch stays clean.
When you want to stop supporting an old GHC, delete that branch.

More information about the Haskell-Cafe mailing list