プログラミング言語

プログラミング言語の種類2

プログラミングのために使用される、プログラミング言語には、たくさんの種類がありますので、いろいろな方法で区別してみましょう。

プログラミング言語の種類数

プログラミングの種類を分類わけしていく中で、どうしても避けて通れない、専門用語も出てきます。一応、注釈をつけて、下段に説明を書いていますが、それ以外に意味が分からないものは、Yahoo!の辞書検索などで調べてください。(ご意見とご感想で質問されても応答できません)

2 用途による分類

高水準言語には、それぞれさまざまな特徴があり、その特徴に応じて使い分けられる。代表的な用途を下記に挙げましょう。

  1. 事務処理用言語
    事務作業で中心となる大量のデータ処理を行うことを目的とした言語で、英語に近い言葉でプログラムが書けるCOBOLが代表例です。ただし、最近はこれまでCOBOLで行われた処理の多くがデーターベースや表計算を用いて可能となったため、需要は減っているようです。

  2. 技術計算用言語
    数式をそのまま記述できて、科学技術で利用する数学関数が充実している言語で、高水準の中で最も歴史が古いFORTRANが代表例です。また、本来コンピュータは計算機として利用された経緯もあるので、多くの言語が計算用で利用できます。

  3. 汎用言語
    事務処理や技術計算の特徴を両方兼ね備えた言語で、PL/Iが代表的でしょう。ただし、 PL/IはCOBOLとFORTRANとALGOL*という3つの言語を足したような言語で、開発当時のコンピュータの性能では、容量がでかすぎる言語であり、普及は進まなかったそうです。また、教育用で開発されたBASIC言語も、計算やデータ処理も行えることから汎用言語として位置付けることもできます。

  4. システム記述用言語
    パソコンやワークステーションのOS*やアプリケーションソフト*を開発するのに使われる言語で、CやC++が代表的です。簡潔な記述が可能で、アセンブラと組み合わせて、ハードウェアの細かい作業も行っているそうです。

  5. 人口知能開発用言語
    数式処理やプロダクションシステムと言った人工知能分野の開発に使われる言語で、代表例としてはLISPとPrologがあります。

  6. 教育用言語
    主に学校におけるプログラム教育用に開発された言語で、基本的には汎用言語としての利用が可能です。FORTRANをベースに開発されたBASICやLISPをベースに開発されたLOGOなどが代表的です。

  7. その他

3 コンパイラとインタプリタ

すべての高水準言語は、コンピュータが理解できる機械語へと変換する必要があります。この変換方法の違いにより、プログラム言語は2つに区別される。変換される前に人間に分かりやすい言語で、描かれたプログラムをソースプログラム、変換され機械語になったプログラムをオブジェクトプログラムと呼びます。

  1. コンパイラ方式
    プログラムを一括して機械語へ変換する作業をコンパイル(compile)と呼び、コンパイルするプログラムをコンパイラ(compiler)と呼びます。言語処理プログラムとはコンパイラをさすものであると考えて良いでしょう。特徴としては、変換するのに手間がかかりますが、コンパイルされた結果は高速な実行ができることです。

  2. インタプリタ方式
    ソースプログラムを1つずつ(1行ずつ)、機械語に変換しながら実行するような方式をインタプリット(interpret)と呼んで、変換するプログラムがインタプリタ(interpreter)と呼びます。ちょうど、同時翻訳と似ています。特徴としては、実行の最中に機械語の変換も行っているので、どうしても実行時間が長くなるということです。しかし、コンパイルの作業が不要の為に、対話性に優れ、プログラムの開発効率は良い。

プログラミング言語の種類1へ戻る


*ALGOLとは1950年代後半、FORTRANなどの言語が米国で作られていたのに対抗して、ヨーロッパの研究者が、世界共通のプログラミング言語として開発した。ALGOL系列の総称です。

*OSとはキーボード入力や画面出力といった入出力機能やディスクやメモリの管理など、多くのアプリケーションソフトから共通して利用される基本的な機能を提供し、コンピュータシステム全体を管理するソフトウェアのことです。

*アプリケーションソフトとは文書の作成、数値計算など、ある特定の目的のために設計されたソフトウェアのことです。