概要
関数型言語であるML言語(この名前は Meta-Language に由来)の方言である Caml にオブジェクト指向を取り入れたもので、フランス国立情報学自動制御研究所(INRIA)で開発された。かつては Objective Caml と称していたが、元々略称として広く使われていた OCaml が正式名称になった。Ocaml の前身である Caml 言語は、現在は Caml Light という名前で配布されている。
関数型とオブジェクト指向の組み合わせという点では Scala に似ている。Ruby なども関数型プログラミングの要素を併せ持つが、Ruby が「オブジェクト指向が先にあり、あとから関数型の機能が追加された」のに対し、OCaml の場合は「関数型パラダイムが先にあり、あとからオブジェクト指向の機能が追加された」という点で異なる。
関連言語
方言
- F# …… .NET Framework 向けの拡張。
- Caml Light …… OCaml の前身。
オブジェクト指向と関数型の組み合わせ
- Scala …… Java仮想マシンで動く。