Subject: Re: bug#22905: GUILE_INSTALL_LOCALE produces unavoidable noise

From: Andy Wingo <[email-masked]>
Date: Mon, 08 Aug 2016 22:17:36 +0200

Hello,

On Mon 08 Aug 2016 01:00, Zefram <[email-masked]> writes:

> Andy Wingo wrote:
>>I believe this is consistent with other programs which call setlocale,
>>notably Perl and Bash.
>
> It is consistent with them, but the fact that others get it wrong isn't
> an excuse.

I would like to let you know that I am working on this in my free time
and in that context I don't respond well to blame, "excuses", and so on.
If you would like for me to work on your bugs then I would appreciate it
if you would keep things constructive.  Thanks :)

>>avoid the call to setlocale, and Guile offers the GUILE_INSTALL_LOCALE=0
>>knob to do this.
>
> That knob is not available to the program.  If you provide a knob that
> the program can control, independent of the environment, with backward
> compatibility to Guile 1.8, then we can consider the setlocale call
> avoidable.

Serious question tho: what sort of back-compatibility can there be with
a Guile that only supports latin-1 strings?  What property is it that
you are going for here?

> Emitting a warning and then running the program anyway is
> fundamentally broken behaviour

My guess is that many people want exactly this behavior.  Only a guess
of course.

What about GUILE_INSTALL_LOCALE=require or something like that?  Does
that suit your needs?  If not, then:

> Some way for the program to detect that you've screwed up its output,
> so that it can decide to abort rather than continue with faulty output,
> would be another middle way.

How would this work?

Regards,

Andy