Drastic Prelude changes imminent

Evan Laforge qdunkan at gmail.com
Sun Feb 1 02:42:00 UTC 2015


On Sun, Feb 1, 2015 at 4:35 AM, Bardur Arantsson <spam at scientician.net> wrote:
> However, I certainly agree with Gershom B that the "enterprise" people
> are exactly the kind of people who have the means to prevent these
> problems affecting *them* too much. They probably should be (or are
> already) doing due dilligence to that effect.

I was actually going to use the same argument but in the opposite way!
 In all my larger projects I wind up with a project-specific
mini-Prelude.  So I'm pretty much isolated from Prelude changes.
Therefore, I don't mind if the Prelude never changes again.  So I'd
prefer to err on the side that makes life easier for library
maintainers.  Of course it also means I don't mind the changes very
much.  They just don't seem like such an obvious improvement either.
I've actually backed away from generalizations before due to the
poorer type inference and error messages that came out of surprising
places, as well as lack of sufficient usefulness.

The main disconnect for me is that I occasionally use Foldable and
Traversable.  But I use a lot more lists, and I actually kind of like
the less general functions.  When I need the general ones, I know
where they are, and I don't mind importing.  I have a tool that adds
qualified imports automatically, but I import Foldable and Traversable
orders of magnitude less frequently than, say, Data.Map.  I don't mind
qualified imports.  I know some people find them ugly, but when
someone says "ugly" about an aesthetic thing (i.e. names, layout,
etc.) I translate that to "I'm not used to it."  This is from personal
experience where I found certain things ugly (e.g. camelCase), but
when I got used to them they look just fine.

I went and read through part of the original BPP thread, and the
principles in support seem reasonable.  The only doc I can find for
BBP is https://wiki.haskell.org/Foldable_Traversable_In_Prelude, and
it doesn't have a "motivation" section.  It would be interesting to
see some specific examples about how the current situation is very
painful, and how the generalization would make it better.  Like I
said, I'm not really against it, but maybe I can learn something from
those who support it so passionately.


More information about the Libraries mailing list