Uma linguagem de scripting é uma linguagem de programação que emprega uma construção de alto nível para interprete e execute um comando de cada vez. Em geral, as linguagens de scripting são mais fáceis de aprender e mais rápidas de codificar do que as linguagens mais estruturadas e compiladas como C e C++.
Linguagens compiladas são convertidas permanentemente em arquivos executáveis antes de serem executadas. Em contraste, linguagens de scripting são tipicamente convertidas em código de máquina durante o tempo de execução por um programa chamado interpretador. Embora esta abordagem possa causar problemas de performance porque as instruções não são tratadas apenas pelo processador, ela facilita o trabalho de scripts com programas escritos em outras linguagens.
Overso tempo, como a compilação just-in-time melhorou o desempenho e as linguagens de programação intepretadas como Perl, Python e Ruby evoluíram, as linhas começaram a desfocar sobre o que deveria, e o que não deveria, ser classificado como uma linguagem de script. Hoje em dia, é geralmente aceite que a classificação não deve ser determinada pela própria linguagem, mas sim pela forma como a linguagem está a ser utilizada.
Quando uma linguagem de scripting é usada para conectar componentes díspares do sistema, ela também pode ser referida como uma linguagem cola. Além de serem interpretadas, tais linguagens de scripting também não precisam ser digitadas, permitindo que uma variável contenha qualquer tipo de dado sem ter que declarar explicitamente o seu tipo. Normalmente, as linguagens de cola também fornecem suporte nativo para tipos de dados agregados específicos, como arrays e automatizam a coleta de lixo para recuperar o armazenamento abandonado e previnem vazamentos de memória.
Linguagens de script como JavaScript são frequentemente usadas para facilitar funcionalidades melhoradas de websites. Estes recursos são processados no servidor, mas o script em uma página específica é executado no navegador do usuário. Muitos sites exigem que o navegador do usuário seja configurado para executar scripts para aproveitar todas as funcionalidades do site. Em alguns casos, um site pode ser praticamente inútil, a menos que o computador do usuário esteja configurado para executar programas localmente em uma linguagem de scripting.
>strong>logias de scripting definidas em outro lugar no WhatIs.com incluem:
AppleScript - programas AppleScript (applets) funcionam como bots: uma vez escritos, podem processar e gerir autonomamente dados multimédia, incluindo vídeo digital, texto e material baseado na Web.
bash - a versão livre da shell Bourne distribuída com sistemas operativos Linux e GNU.
Bourne shell - a shell UNIX original. Também conhecida pelo seu nome de programa, sh.
C shell - inventada para programadores que preferem uma sintaxe semelhante à da linguagem de programação C.
JavaScript - linguagem de script desenvolvida pela Netscape. É algo semelhante em capacidade ao Visual Basic da Microsoft, ao Tcl da Sun, ao Perl derivado do UNIX e ao REXX da IBM.
Korn shell - incorpora todas as funcionalidades do C shell (csh) e Tab C-shell (tcsh) com as funcionalidades da linguagem de script semelhantes às do Bourne shell
LotusScript - pode ser codificado dentro do ambiente de desenvolvimento do Lotus Domino Designer.
Perl - uma linguagem de programação de scripts que é similar em sintaxe à linguagem C; pode opcionalmente ser compilada imediatamente antes da execução em código C ou em bytecode multi-plataforma.
PHP - uma linguagem de script e intérprete que está disponível livremente e é usada principalmente em servidores Web Linux.
PowerShell - projetado para automatizar tarefas do sistema, tais como processamento em lote, e criar ferramentas de gerenciamento de sistemas para processos comumente implementados; inclui mais de 130 ferramentas de linha de comando padrão para funções que anteriormente exigiam que os usuários criassem scripts em VB, VBScript ou C#.
Python - frequentemente utilizado para fornecer capacidade de scripting a aplicações existentes; é suficientemente simples para scripting a nível de utilizador com um mínimo de treino.
Ruby - de acordo com os proponentes, a sintaxe simples do Ruby (parcialmente inspirada pelo Ada e Eiffel), torna-o legível por qualquer pessoa que esteja familiarizada com qualquer linguagem de programação moderna.