Re: My "Stop Using (and Teaching) C-Shell and Tcsh" Page

"Beni Cherniavsky" <[email protected]> Sat, 20 Oct 2007 20:21:31 +0200
Newsgroups gmane.culture.hackers.israel
Message-ID <[email protected]>
On 10/19/07, Shlomi Fish <shlomif-ik1l9ssToec+JF/[email protected]> wrote:
> On Friday 19 October 2007, Beni Cherniavsky wrote:
> > But for those of us that find even {ba,z,k}sh unsatisfactory, I highly
> > recommend trying the Friendly Interactive SHell
> > <http://fishshell.org/>.  It fixes many things like quoting, innovates
> > in configuration and has interactive syntax-higlighted
> > multiline-editing completing-on-steroids prompt.
>
> My problem with FISH is that its syntax is incompatible with that of the
> Bourne Shell, much less with bash. As such, I recommend people not to get use
> it, for fear it will become the next csh/tcsh. I'd rather improve bash or zsh
> in areas that one feels they need improvement, than create something
> incompatible.
>
> So stay away.
>
It won't become the next csh because it's not vastly inferior ;-).  It
just as real a language as bash, only different.  Whether to use it or
not is a pesonal decision, depending on whether one likes it, being an
early adopter, etc.

Of course, as Nadav says, if somebody is going to learn just one
shell, the only sensible recommendation is [ba]sh.

> And I daresay I don't find bash unsatisfactory. I'm probably still using a
> very small of its functionality, and it has many dark corners that I haven't
> investigated yet. I still haven't even found enough motivation to use zsh
> instead of bash.
>
I find any shell following Bourne shell semantics of quoting and
variable expansion inherently broken, because it takes too much hassle
to write correct code.  IMMV.

> And I'm still finding myself using Perl for many non-trivial scripting
> problems.
>
Obviously.  Command-line glue is just not flexible enough to compete
with real data structures and interfaces that you find in a real
language.  Also, shell scripts suffer from much higher software rot
due to dependence on numerous external programs.

> I'd rather see the good FISH ideas integrated into bash.
>
Some of them (mostly the interactive features) could, and probably
should, be integrated.
But the syntax improvements can't be sh-compatible, because it
explicitly sets out fix sh syntax mistakes.

-- 
Beni Cherniavsky <[email protected]> (I read email only on weekends)