2017-03-05 13:50 GMT+01:00 Vladislav Zavialov <vlad.z.4096@gmail.com>:
> that's solvable with CPP if needed

Note that it's possible to avoid CPP because one can use `fmap toList
. some` to achieve the old behavior. And the breakage is not silent,
so it won't be too hard for maintainers.

IMHO it's basically irrelevant if you would need CPP or could do it in plain Haskell, the main point is: It is an incompatible, breaking change which must be acted upon by maintainers. An ongoing stream of such tiny changes results in a non-trivial amount of work if you want to keep your projects up-to-date.

A much better approach is to bundle such changes and discuss them, come up with a good migration story, implement things and release them, all under a common theme. In our case, it would be something like "use NonEmpty in base and some central packages wherever it makes sense", *if* that is what people want.

I'm basically neutral about the proposed change itself, but I'm -1 if it is considered in isolation.