Why interpreted languages make superior scripting languages
Ever thought why python, bash, ruby are so dominant in the scripting scene?
It is not their syntax or their standard libraries that make them so good for scripting. The actual reason is the convenience/workflow.
Take a compiled language. For eg: C.
If you want to write a quick script, you'll write a script.c
But you cannot use it yet. You'll have to:
A similar process will be for other compiled languages like C++, rust, C#, java, scala etc
Now take an interpreted language. For eg: python
You write the script.py in your $PATH directory, and you can immediately execute it by running
$script.py. No more steps.
If the script doesn't work, edit it on the spot and re-run it. Simple.
It is the same for other interpreted languages like python, bash, ruby etc.
With interpreted languages you can write scripts stupid fast. Because, the file you write is exactly the file that is run. There are no other steps, no frictions. Just write, and it is already executable.
Another point is, the python script that you wrote for your computer can be run on any device that has python installed. The C script that you wrote for your computer will have to be re-compiled to match the architecture of the other device.
The difference is in being able to do something immediately, versus having to do extra steps to get the thing done.
Friction is a big factor.