Monad of No Return: The Great Patchening
Hi all!
tl;dr: I have 148 packages on stackage to patch for compatibility, and I’d like your help!
I’ve got another update on the Monad of No Return/Monoid of No Mappend proposal.
Following proposal acceptance just under a year ago, I started implementation this year. Recently the MR is in a good enough state for me to check it against clc-stackage, a tool for building all of stackage against custom GHC versions.
The result of that is this issue in the core library committee repository, where I detail which packages have changes which need to be put on to hackage, as well as a huge, unreadable gist filled with patches I made to get stackage compiling.
That brings me to the point of this discourse post - I ask that anyone that has a moment peruse the list, and if you are a contributor to one of these packages (or want to get involved with a package), that you submit a patch and let me know!
There are a lot of packages to patch, each with their own history and customs, and it would save time in the long run if patches are made that suit each package.
As well as the explicit breakage (of non-canonical pure, return, (<>), and mappend definitions), removing canonical definitions of return = pure and mappend = (<>) would be good to reduce the future work we need to do.
Discussion in the ATmosphere