[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: coreutils feature requests?
From: |
Kaz Kylheku (Coreutils) |
Subject: |
Re: coreutils feature requests? |
Date: |
Wed, 19 Jul 2017 10:32:37 -0700 |
User-agent: |
Roundcube Webmail/0.9.2 |
On 19.07.2017 10:03, Lance E Sloan wrote:
With regard to your objection to a special environment variable: I
agree.
I didn't feel strongly about it at first, but I was leaning towards not
implementing env. var. support for this. It just didn't feel right. I
have written programs that use env. var. to specify or override default
options. However, your point about adding this to an existing,
established
program where it could possibly cause variable conflicts is enough to
set
my option a little more strongly against an env. var. for this purpose.
My own objection to such influencing env-vars is rooted in
"global variables are bad"; i.e. the inherited wisdom from decades
of computer science and software engineering practice.
Say you want to combine code from two or more scripts, all of which
want to configure the same tools in different ways via globals. Now
you have a mess of saving and restoring the global so that it
has the value that each bit of code expects when that code is running.
With magic globals we can't look at a line of code and know exactly
what it will do, without reasoning about what are the current values
of the globals. That reasoning may be intractable: i.e. situations in
which it simply cannot be known. Then the code has to ensure that the
variables have certain values by assigning them. Except, it can't
just assign because that will influence some other code; it has to
save the prior values, then assign, then restore when done.
Of course environment variables can be scoped:
OPT=value command
but that's local syntax now, which defeats the purpose of the
"action at a distance" effect of the variable; it might as well be
transliterated to:
command --opt=value
and there we are.
- Re: coreutils feature requests?, (continued)
- Re: coreutils feature requests?, Lance E Sloan, 2017/07/18
- RE: coreutils feature requests?, Nellis, Kenneth, 2017/07/19
- Re: coreutils feature requests?, Steeve McCauley, 2017/07/19
- RE: coreutils feature requests?, Nellis, Kenneth, 2017/07/19
- Re: coreutils feature requests?, Eric Blake, 2017/07/19
- Re: coreutils feature requests?, Lance E Sloan, 2017/07/19
- Re: coreutils feature requests?, Eric Blake, 2017/07/19
- Re: coreutils feature requests?, Kaz Kylheku (Coreutils), 2017/07/19
- Re: coreutils feature requests?, Bernhard Voelker, 2017/07/19
- Re: coreutils feature requests?, Lance E Sloan, 2017/07/20
- Re: coreutils feature requests?,
Kaz Kylheku (Coreutils) <=
- ENVVars Removal and functional replacements (was Re: coreutils feature requests?), L A Walsh, 2017/07/19
- Re: coreutils feature requests?, Assaf Gordon, 2017/07/19
- Re: coreutils feature requests?, Erik Auerswald, 2017/07/20
- Re: coreutils feature requests?, Erik Auerswald, 2017/07/20
- Re: coreutils feature requests?, Eric Blake, 2017/07/20
- RE: coreutils feature requests?, Kaz Kylheku (Coreutils), 2017/07/19
- Re: coreutils feature requests?, Lance E Sloan, 2017/07/19