スクリプト言語 【scripting language】 軽量言語 / LL / Lightweight Language
概要
スクリプト言語(scripting language)とは、プログラミング言語の一種で、オペレーティングシステム(OS)やアプリケーションソフトの動作や機能などをプログラムの形で記述できるもの。転じて、実行可能形式への変換作業などを省略・自動化したり、少ない記述量でも実行できるなど、仕様や開発手順が簡略化されたプログラミング言語の総称。ソフトウェアの動作の自動化などを行なうプログラムを記述する言語は「マクロ言語」とも呼ばれ、手動で操作するには面倒な定型的あるいは反復的な処理を自動化したり、複数の機能を組み合わせて目的に沿った新しい機能を作り出すために使われる。ソフトウェアの機能の一部として提供され、そのソフトウェアの外では実行できないことが多い。
一方、汎用的なスクリプト言語は、ちょっとしたプログラムをすぐに記述・実行できるよう仕様を簡略化した言語で、明確な定義は無いが、以下のような特徴を持っていることが多い。
本格的なプログラミング言語の多くで要求される、使用するモジュールなどの宣言やプログラムの大枠の構造などの記述などを省略することができる。ただし、これらは仕様としては組み込まれ、本格的なプログラムを開発する場合などには必要になることもある。
また、人間が記述したソースコードを機械語など実行可能なプログラム形式へ変換(コンパイル)したり、ライブラリファイルを結合(リンク)するなどの手順を明示的な操作として行う必要がなく、記述したプログラムを即座に実行できるようになっている。ソースコードを読み込み、実行形式に変換しながら同時に実行する言語処理系を「インタプリタ」(interpreter)という。
特定のソフトウェア環境上で動作するスクリプト言語としては、Flashで用いられるActionScript(JavaScriptのFlash方言)、Microsoft Officeの各アプリケーションで用いられるVBA(Visual Basic for Applications)、UNIX系OSのシェル上で実行されるシェルスクリプト、macOSの操作を自動化するAppleScript、Webサーバで用いられるPHPやJSP、ASPなどがよく知られる。
汎用的に様々な環境や用途で用いられるスクリプト言語としてはPythonやRuby、Perlなどが有名である。JavaScriptのようにWebブラウザに対するマクロ言語のような用途として発明されながら、拡張や移植を重ねて汎用的な言語として様々な機能や実行環境を獲得した例もある。