インタプリタ【interpreter】
概要

“interpreter” の原義は「通訳者」で、人間などがプログラミング言語で記述したソースコードを処理の流れの順に少しずつ読み込んでいき、内容を解析して実行可能なプログラムに変換し、即座に実行する。変換と実行を逐次的に繰り返し行い、処理を進めていく。
コンパイラやアセンブラなどで一括して変換してから実行する方式に比べ、ソースコードを与えれば即座に実行開始できるため、開発や修正をテンポよく進めることができる。ただし、変換にかかるオーバーヘッドの分だけ実行速度やメモリ使用量では劣る。
インタプリタによる実行を前提とする場合はプログラムの配布をソースコードで行うことになるが、環境ごとに変換済みのバイナリコードを用意しなくてよく、インタプリタさえ用意されていれば様々な環境で動作させられる。反面、利用者にソースコードを必ず提供することになるため、商用ソフトウェアなどではこの点が忌避されることもある。
現代では実行方式を工夫する言語や処理系もある。例えば、ソースコードではなく仮想的なCPUの機械語である中間コードやバイトコードに変換したプログラムをインタプリタに与える方式や、実行開始時に自動的にコンパイルを行って機械語コードに変換してから実行する方式などがある。
標準の言語処理系をインタプリタとする言語は「スクリプト言語」(script language)あるいは「軽量言語」(lightweight language)と呼ばれることがある。プログラムの入力画面とインタプリタを一体化した実行環境は「REPL」(Read-Eval-Print Loop)という。
(2025.8.25更新)
「インタプリタ」の関連用語
他の用語辞典による「インタプリタ」の解説 (外部サイト)
- ウィキペディア「インタプリタ」
- 大塚商会 IT用語辞典「インタプリタ」
- 日経 xTECH IT基本用語辞典「インタプリタ」
- NTT西日本 ICT用語集「インタプリタ」
- エリートネットワーク ビジネス用語集「インタプリタ」
- 情処用語辞典「インタプリタ」
- JavaA2Z「インタープリター」
- Programming Place Plus 用語集「インタプリタ」
- TechTerms.com (英語)「Interpreter」
- Techopedia (英語)「Interpreter」
資格試験などの「インタプリタ」の出題履歴
▼ ITパスポート試験
【平25秋 問55】 プログラムの実行方式としてインタプリタ方式とコンパイラ方式がある。図は、データを入力して結果を出力するプログラムの、それぞれの方式でのプログラムの実行の様子を示したものである。
▼ 基本情報技術者試験
【令6修6 問14】 Javaなどのバイトコードプログラムをインタプリタで実行する方法と,コンパイルしてから実行する方法を,次の条件で比較するとき,およそ何行以上のバイトコードであれば,コンパイル方式の方がインタプリタ方式よりも処理時間(コンパイル時間も含む)が短くなるか。
【令2修6 問19】 インタプリタの説明として,適切なものはどれか。
【令1修12 問18】 Javaなどのバイトコードプログラムをインタプリタで実行する方法と,コンパイルしてから実行する方法を,次の条件で比較するとき,およそ何行以上のバイトコードであれば,コンパイル方式の方がインタプリタ方式よりも処理時間(コンパイル時間も含む)が短くなるか。
【平31春 問19】 インタプリタの説明として,適切なものはどれか。
【平30修6 問20】 Javaなどのバイトコードプログラムをインタプリタで実行する方法と,コンパイルしてから実行する方法を,次の条件で比較するとき,およそ何行以上のバイトコードであれば,コンパイル方式の方がインタプリタ方式よりも処理時間(コンパイル時間も含む)が短くなるか。
【平28修12 問19】 Javaなどのバイトコードプログラムをインタプリタで実行する方法と,コンパイルしてから実行する方法を,次の条件で比較するとき,およそ何行以上のバイトコードであれば,コンパイル方式の方がインタプリタ方式よりも処理時間(コンパイル時間も含む)が短くなるか。
【平27修6 問20】 Javaなどのバイトコードプログラムをインタプリタで実行する方法と,コンパイルしてから実行する方法を,次の条件で比較するとき,およそ何行以上のバイトコードであれば,コンパイル方式の方がインタプリタ方式よりも処理時間(コンパイル時間も含む)が短くなるか。
【平26修7 問19】 インタプリタの説明として,適切なものはどれか。
【平26修1 問25】 Javaなどのバイトコードプログラムをインタプリタで実行する方法と,コンパイルしてから実行する方法を,次の条件で比較するとき,およそ何行以上のバイトコードであれば,コンパイル方式の方がインタプリタ方式よりも処理時間(コンパイル時間も含む)が短くなるか。
【平24修6 問25】 Javaなどのバイトコードプログラムをインタプリタで実行する方法と,コンパイルしてから実行する方法を,次の条件で比較するとき,およそ何行以上のバイトコードであれば,コンパイル方式の方がインタプリタ方式よりも処理時間(コンパイル時間も含む)が短くなるか。
【平23春 問23】 Javaなどのバイトコードプログラムをインタプリタで実行する方法と,コンパイルしてから実行する方法を,次の条件で比較するとき,およそ何行以上のバイトコードであれば,コンパイル方式の方がインタプリタ方式よりも処理時間(コンパイル時間も含む)が短くなるか。
【平22修6 問25】 インタプリタの説明として,適切なものはどれか。