About your general point, I think that's only because all the shell commands are available by default. To delete a file, there's simply "rm". A general purpose language would normally require more code to delete a file, and that additional code is perceived as "noise". The thing to do would be to reduce that noise to almost nothing.

There's been a number of experiments to replace the shell with scheme, perl, or python. I'm not sure how successful they were for particular people, but they didn't quite take. My speculation is that general languages are "too powerful" for shell scripting.

First, there's not really a high need for it. There might be many people who dislike sh, but sh works "well enough", and there's no pressure to replace it. And sh is standard and available anywhere.

Second, an alternative absolutely had to be standard to be successful, because else you couldn't "compose" the various utilities to write larger programs, like in sh. Or you had to start processes and pass command line arguments and use stdin/stdout, but sh is better at this.

Reply via email to