Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 18 Jul 2000 16:10:47 -0700 (PDT)
From:      John Baldwin <jhb@pike.osd.bsdi.com>
To:        Alfred Perlstein <bright@wintelcom.net>
Cc:        FreeBSD@pike.osd.bsdi.com, questions <freebsd-questions@freebsd.org>, "David J. Kanter" <djkanter@northwestern.edu>
Subject:   Re: Is the C-shell (csh) a bad shell?
Message-ID:  <200007182310.QAA55420@pike.osd.bsdi.com>
In-Reply-To: <20000718160249.I13979@fw.wintelcom.net> from Alfred Perlstein at "Jul 18, 2000 04:02:49 pm"

next in thread | previous in thread | raw e-mail | index | archive | help
> * David J. Kanter <djkanter@northwestern.edu> [000718 15:57] wrote:
> > I'd like to learn a shell fairly well and chose csh because it's in the base
> > FreeBSD system (a little graybeard character) and I found good documentation
> > on it written by William Joy. But I've read some things that it's a "bad"
> > shell.
> > 
> > Is it?
> > 
> > It seems that, at some level, all shells are essentially equal. But when
> > shells start to divide is csh left in the dust? What about the shells I've
> > read rave things about: Korn and Bash.
> > 
> > I've got C++ experience, so maybe that's why I chose csh too.
> 
>           *** CSH PROGRAMMING CONSIDERED HARMFUL ***
> 
>     Resolved: The csh is a tool utterly inadequate for programming, 
>               and its use for such purposes should be strictly banned!
> 
> http://arch.freeciv.org/aclug-l-199811/msg00018.html
> 
> -Alfred

I have found this and similar anti-csh arguments to be largely a matter
of opinion and personal style rather than having any substance.  The
same can be said for most programming language wars.  There are two
rather large shortfalls in csh's language, however.  It does not support
functions (except perhaps by abusing aliases), and it does not allow the
same amount of flexibility in I/O redirection.  However, I rarely find
that I use much of the added flexibility of I/O redirection in sh.  For
scripts where I need that or where I need functions, I tend to use sh.
For other scripts I tend to use csh.  Perhaps it's my Pascal background
showing through, but I prefer if (foo) then endif to if [ foo ]; then fi.

Basically, I freely use both, and use tcsh as my interactive shell.  There
is certainly no harm in learning csh, but I would also learn sh as well.

--

John Baldwin <jhb@bsdi.com>


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-questions" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200007182310.QAA55420>