インタプリタ

インタプリタ(interpreter)とは、一つずつ命令を順番に解釈しながら実行していくプログラムのことをいう。

CPUプロセッサ)では「0」と「1」の二進数で計算している。このデータバイナリコード機械語マシン語、オブジェクトコードと呼ばれているものである。人間がプログラミング言語によって作り上げるソースコードは、そのままではCPUに理解できない。そのため、二進数のバイナリコードに変える必要がある。これをコンパイルという。

インタプリタは、コンパイラに対比される言葉だが、インタプリタは一つ一つの命令を翻訳しながら実行という動作を繰り返している。これがコンパイルと呼ばれている作業である。コンパイラ型では、この作業を事前にまとめて行ってから実行へと移る。ここがインタプリタと大きく異なる点。

また、インタプリタは細かく翻訳と実行を繰り返しているため、処理が遅くなる。その反面、インタプリタではすぐに結果が得られるため、プログラムがきちんと動作するかどうかをすぐに確認できる。一方、コンパイラ型はまとめて事前処理しているため、処理が速くなる。その反面、コンパイルしてから実行というプロセスを踏むため、インタプリタに比べると確認や検証に時間がかかるという性質がある。

インタプリタは速度が遅いものの、ソースコードを細かくコンパイルできる環境があれば、色んなプラットフォームで動作する。コンパイラ型は、ソースコードをプラットフォームに合わせなければならなない。そのために再コンパイルによる移植を要する。

ちなみにインタプリタ型言語と呼ばれるものでは、perl、php、javascript、VBScript、BASIC、Python、Rubyなどがある。コンパイラ型言語では、CやC++などが代表例。

これらの型の両方の側面を持ったものでは、Java言語がある。こちらはソースコードを前もってバイトコードと呼ばれる中間コードに変換する。これを仮想マシンがバイナリコードに置き換えてCPUに命令を出すというプロセスを踏む。もともとは、インタプリタを採用していた経緯がある。

尚、インタープリタやインタプリター、インタープリターとも表記される。

インタプリタの意味を簡潔に説明すると

人間の作ったソースコードをCPUが理解できる言語にかえながら動作するプログラムのこと。