Hello everyone,
To provide another data-point; in my "Prelude module replacement" package
which encodes a common standard vocabulary from `base` I've observed in my own projects over the years where I often keep a "local prelude" module for the purpose of establishing a project-specific common vocabulary. Under these constraints, `on` as well as `&` happens to be such a common vocabulary which I expect to have in my default scope, and thus is reexported from the "Prelude" module:
But then again, since it's so easy to implement your own opinionated "Prelude" replacement (either project-local or as a package on Hackage), and subjective tastes differ greatly as the recent controversial "singleton" proposal showed, and even though reexporting `on` from Prelude has an objective merit in contrast, and I can definitely sympathise with *this* proposal, I'm not sure if we really need to modify `base` to achieve the stated goal of having a more convenient function in scope.
But to be clear; at this point, I'm neither for nor against the proposal to reexport names from Data.Function from the `base` Prelude.