Previous Up Next

2  Objective Caml 入門

別に配布するテキストを参照のこと.以下は,テキストからの Objective Caml 言語に関する記述の一部抜粋である.

2.1  Objective Caml とは

プログラミング言語 ML は,元々は計算機による証明支援系から発展 してきた言語1 で,関数型プログラミングと呼ばれるプログラミングスタイルをサポートして いる.MLは核となる部分が小さくシンプルであるため,プログラミング初心者 向けの教育用に適した言語であると同時に,大規模なアプリケーション開発の ためのサポート(モジュールシステム・ライブラリ)が充実している.MLの核言 語は型付きλ計算と呼ばれる,形式的な計算モデルに基づいている. このことは,言語仕様を形式的に(数学的な厳密な概念を用いて)定義し,その 性質を厳密に「証明」することを可能にしている.実際,Standard ML という 言語仕様[5]においては,(コンパイラの受理する)正しいプログラ ムは決して未定義の動作をおこさない,といった性質が証明されている.

この実験及演習で学ぶのは ML の方言である Objective Caml という言語である. Objective Caml は INRIA というフランスの国立の計算機科学の研究所でデザイン・開 発された言語で,Standard ML とは文法的には違った言語であるが,ほとんど の機能は共有している.また,OCaml では Standard ML には見られない,独 自の拡張が多く施されており,関数型プログラミングだけでなく,オブジェク ト指向プログラミングもサポートされている.またコンパイラも効率的なコー ドを生成する優れたものが開発されている.

2.2  ML (Objective Caml) の特徴

ML (Objective Caml) の特徴としては,以下のようなものが挙げられる.
Previous Up Next