Apparently, csh programming is considered harmful.
Peter Schuller
peter.schuller at infidyne.com
Mon Dec 17 09:33:35 PST 2007
> other BSDs for that matter. It being GPL guarantees that quite apart
> from it general suckiness.
Can someone please explain why bash sucks?
Everyone keep's saying this but I have never heard anyone explain why, other
than the GPL issue. I really want to know.
(This is not because I'm a bash fan. My personal favorite happens to be zsh.)
> I tried replacing /bin/bash with /bin/ksh on a Linux system and it
> almost completely broke it. Suggests the Linux folks can't write
> boot scripts without bashisms.
If this is a poke at the use of #!/bin/sh when the script actually requires
bash, I 100% agree.
However, if your intent (and the intent of Chuck Robey in that earlier) post
is to imply that it's bad programming practice to write anything than POSIX
compatible scripts, then I have to ask again - why?
This is kind of a pet peeve of mine, so here goes somewhat of a rant. Please
enlighten me as to why I am wrong:
I don't understand why everyone insists on POSIX compliance for portability
with shell scripting. The POSIX common demoniator seems to suck. Seriously.
One keeps seeing things like:
if [ x"$var" = x"value" ]
When the intent is:
if [ "$var" = "value" ]
Because there is presumably some wonky script out there that breaks on the
former (or perhaps its POSIX, dunno). I have recently began to appreciate
that all this madness that would normally be considered unforgivable code
obfuscation in anything but shell scripting, is all an attempt to somehow be
portable.
In any number of situations I would consider it much preferable to juse choose
one particular shell and stick to it, rather than having to do battle with
all these minor incompatibilities. Many major shells are very portable to
begin with, and in many situation you *REALLY* don't care about some exotic
Unix platform that 10 people in the world run, but where bash/zsh/whatever
doesn't.
Another example of the madness is:
http://www.netbsd.org/docs/pkgsrc/makefile.html
Check out section 12.3.3. Can anyone claim that it is sensible for it to be
this fricking difficult *to print the value of a variable*?
Although that last bit has to do with more than the choice of a shell, it
highlights perfectly the type of trouble you run into when you try to be
portable with the least common denominator.
--
/ Peter Schuller
PGP userID: 0xE9758B7D or 'Peter Schuller <peter.schuller at infidyne.com>'
Key retrieval: Send an E-Mail to getpgpkey at scode.org
E-Mail: peter.schuller at infidyne.com Web: http://www.scode.org
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 187 bytes
Desc: This is a digitally signed message part.
Url : http://lists.freebsd.org/pipermail/freebsd-questions/attachments/20071217/5cb934f6/attachment.pgp
More information about the freebsd-questions
mailing list