Un linguaggio di scripting è un linguaggio di programmazione interpretato che consente di manipolare le funzionalità di un sistema informatico configurato per fornire all'interprete di questo linguaggio un ambiente e un'interfaccia che ne determinano le possibilità. Il linguaggio di scripting può quindi superare i vincoli del comando low - supportato tramite l'interfaccia - e ottenere una sintassi di alto livello .
I linguaggi di scripting sono generalmente eseguiti da file (i cosiddetti, appunto, script ) contenenti il codice sorgente del programma che verrà interpretato. Storicamente, sono stati creati per abbreviare il tradizionale processo di sviluppo build - build - edit-runtime- link specifico per i linguaggi compilati . I primi linguaggi erano spesso chiamati "linguaggio di controllo" o "linguaggio web del lavoro" ( JCL : Job Control Language ) in quanto consentivano semplicemente di automatizzare una serie di semplici comandi, come un "copione" di teatro. Successivamente, sono state fornite esecuzioni condizionali implicite ( IBM 1130 ) o esplicite (JCL) e, infine, comandi di ciclo e operatori che li trasformavano in quasi linguaggi di programmazione .
Nel senso più tradizionale, che è quello degli script di shell , uno script viene utilizzato principalmente per avviare e coordinare l'esecuzione dei programmi.
In un altro senso, il linguaggio di scripting è anche chiamato un linguaggio in cui gli elementi visivi sono considerati personaggi posti su un "palcoscenico", personaggi il cui comportamento è definito da un copione . Uno dei primi linguaggi di questo tipo nel mondo del microcomputer è stato il linguaggio HyperTalk ( linguaggio orientato agli oggetti derivato da Smalltalk ) molto vicino al linguaggio naturale, che Dan Winkler creò nel 1987 per controllare il programma HyperCard su MacIntosh. Il linguaggio Lingo in Macromedia Director è un discendente diretto di HyperTalk.
Infine, "linguaggio di scripting" a volte designa qualsiasi linguaggio di programmazione interpretato (il che lo rende un abuso di linguaggio: in realtà, il carattere interpretato o compilato si riferisce a una particolare implementazione , non a un linguaggio), in relazione a linguaggi compilati come C , C ++ , Java , ecc. Ci sono poi quelli che a volte o sempre vengono interpretati come BASIC , PHP , Lisp , JavaScript , ecc.
Il termine linguaggio di scripting ha spesso una connotazione negativa, quindi preferiamo parlare di linguaggio di programmazione dinamico quando possibile.
I linguaggi di scripting più famosi sono:
Ma ce ne sono molti altri.
Gli script vengono utilizzati a diversi livelli:
Larry Wall, che è il progettista del linguaggio di programmazione Perl, ha detto:
- "La programmazione è difficile, iniziamo a creare script ... "