Básicamente, todos los lenguajes de scripting son lenguajes de programación. La diferencia teórica entre ambos es que los lenguajes de scripting no requieren el paso de compilación y son más bien interpretados. Por ejemplo, normalmente, un programa C necesita ser compilado antes de ejecutarse mientras que normalmente, un lenguaje de scripting como JavaScript o PHP no necesita ser compilado.
Generalmente, los programas compilados se ejecutan más rápido que los programas interpretados porque primero se convierten en código máquina nativo. Además, los compiladores leen y analizan el código una sola vez, e informan de los errores que pueda tener el código de forma colectiva, pero el intérprete leerá y analizará las sentencias del código cada vez que se encuentre con ellas y se detendrá en ese mismo momento si hay algún error. En la práctica, la distinción entre ambos se está difuminando debido a la mejora de las capacidades de cálculo del hardware moderno y a las prácticas de codificación avanzadas.
Otro punto que hay que tener en cuenta es que, al clasificar un lenguaje como lenguaje de scripting o de programación, hay que tener en cuenta el entorno en el que se ejecutará. La razón por la que esto es importante es que podemos diseñar un intérprete para el lenguaje C y utilizarlo como un lenguaje de scripting, y al mismo tiempo, podemos diseñar un compilador para JavaScript y utilizarlo como un lenguaje no script (compilado). Un ejemplo vivo de esto es V8, el motor JavaScript de Google Chrome, que compila el código JavaScript en código máquina, en lugar de interpretarlo.
Algunos lenguajes de scripting utilizados tradicionalmente sin un paso de compilación explícito son JavaScript, PHP, Python, VBScript.
Algunos lenguajes de programación utilizados tradicionalmente con un paso de compilación explícito son C, C++.
Aplicaciones de los lenguajes de scripting :
1. Para automatizar ciertas tareas en un programa
2. Extraer información de un conjunto de datos
3. Menos intensivos en código en comparación con los lenguajes de programación tradicionales
Aplicaciones de los lenguajes de programación :
1. Suelen ejecutarse dentro de un programa padre como los scripts
2. Más compatibles a la hora de integrar el código con los modelos matemáticos
3. Lenguajes como JAVA pueden ser compilados y luego utilizados en cualquier plataforma