Languages and Scripting
cancel
Showing results for 
Search instead for 
Did you mean: 

Why is it the csh or C shell is called scummy by most users?

 
sysad1_1
Advisor

Why is it the csh or C shell is called scummy by most users?

Hi Everyone,

I recently posted a problem with the which command. Most users here that gave their opinion and suggestions often calls c shell or csh as a scummy shell. Why is it so?

Is it really worthless? If it is then why HP-UX has this?
4 REPLIES 4
Bob E Campbell
Honored Contributor

Re: Why is it the csh or C shell is called scummy by most users?

30ish years ago csh was way ahead of the game. Many of its abilities were brought back to the Bourne shell pantheon with the introduction of Korn shell (ksh).

Long after I stopped using csh some explained that they liked csh better for language support ( $LANG |= "C" ), but I can't speak to that.

I do recall that csh was associated with Berkeley (BSD) while the Bourne family were System V.

I always preferred scripting in shell, and POSIX locked that down, but I freely admit to being a csh user in the 80's!
Matti_Kurkela
Honored Contributor

Re: Why is it the csh or C shell is called scummy by most users?

Google for "csh programming considered harmful", and you'll find a lot of references to Tom Christiansen's Usenet post that detailed all the shortcomings of csh. Of course he originally wrote it just to express his opinion, but he did justify his opinion very well indeed.

The post can be found e.g. here:

http://www.faqs.org/faqs/unix-faq/shell/csh-whynot/

> [...] then why HP-UX has this?

The reason is compatibility.

Voltaire once said "The perfect is an enemy of the good." Often this is paraphrased as "the Perfect is the worst enemy of the Good Enough".

The C shell has some serious shortcomings, but while it isn't perfect, it is good enough for many simple tasks (and some not-so-simple ones).

HP wants HP-UX to be able to run as much software as possible, even if that software has been implemented with less-than-perfect tools.

Unfortunately, there is no easy way to stop people from using csh for new implementations. Some programmer-type people might prefer csh because its syntax seems more familiar to them, and either don't know or don't care about the limitations of csh.

MK
MK
Dennis Handly
Acclaimed Contributor

Re: Why is it the csh or C shell is called scummy by most users?

>Is it really worthless?

Decades ago was sold a bill of goods when I took a scummy C shell class. It was much better than bourne shell because it had a history, etc.

When I went to my actual workstation, it had ksh, so why would I want to use the scummy C shell when I had vi editing?

(To be fair, other shells derived from csh, tcsh have editing.)
Bob E Campbell
Honored Contributor

Re: Why is it the csh or C shell is called scummy by most users?

What we should really be asking is why did people stop using Tom's Window Manager (twm). I mean that thing rocked! ;-)