Allow users to make sure locales are not implicitly chosen
#17755 was created to advocate switching to some sort of Unicode by default, ignoring the environment variables. That may still be a good idea, but I think it better (less controversy, less breakage) to first focus on mechanisms before policy.
Today, locales are often implicitly chosen. I don't think programs should be reading env vars behind their programmers back. I would like to prevent that from happening, e.g. by building a variation of base
that has such functionality removes. Then, one can either hard-code a unicode locale, or set up the default the locale from environment variables, but the locale must be set manually.
To quote @kirelagin from the issue who had a similar thought
So, I would suggest opening a separate issue for this part of the discussion, and a reasonable first step would be to identify the places where the effect of
setlocale
can be seen in Haskell, if any.
Indeed the first step is identifying what exactly is the flow of information today. This is far from obvious!