Is Shell Scripting Programming?
Every now and then I am confronted with a holy war issue that must be addressed. So here is one such holy war issue. “Is Shell Scripting Programming?” This question when posed by people who just don’t know or understand the reason for shell scripting will solicit a “no” response, even though this question has been answered many times to the affirmative (“yes”). The problem is that many “Programmers” are products of the new school of thought that goes like this; “If I have not done something it is not possible, If I do not know how to do something it is impossible, If I don’t realize the possibilities of something it does not exist”. This is a very dangerous way of thinking because it limits the thinker to only that which is quantifiable in their individual way of thinking.
The problem is that most people never learn shell scripting past what they used it for, which is carrying out repetitive command tasks. There is so much more to shell scripting, that if some folks would take the time to explore it (scripting) they would see that interpretive programming (scripting) is just as powerful and as useful as compiled programming, within certain limits. Now, I am not naive enough to think that scripting can go head to head with compiled programming in areas such as memory allocation and use, garbage collection, pointer and stack location monitoring, and other tasks that can be performed in compiled programming. However, shell scripting can offer a quick and fast-acting solution to programming issues, in fact, I believe through observation and experimentation that shell scripting can provide a running framework for programming in other languages. For instance, take the following shell script written in Tool Control Language:
I have taken this shell script and reproduced it in JAVA, C++, and C programming languages, so therefore to say that there is no use for shell scripting is just not true, many shell scripters create quick and dirty programming frames to be used as proof of concept, and then the script is turned over to a compiled source code programmer to be written in the language of choice, because at least the programmer now has a running example of what the compiled program is to produce.
So to the question; “Is Shell Scripting Programming?” I must give a resounding, YES it is!! Shell Scripting is not a compiled source-code based programming language, but it is interpretative and iterative programming, which is a programming style, nonetheless.