Previous Up Next
2 Objective Caml 入門

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

2.1 Objective Caml とは

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

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

2.2 Objective Caml の特徴

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