OCaml
Objective-Camlの略。
このCamlはCategorical abstract machine languageの略であり、Categorical abstract meta languageではない。
他のML方言同様に関数型言語のキホンやlet多相に加え、モジュールやGADTを持つなど、強力な言語である。 特にモジュールは高階のモジュールであるファンクタという機能を持ち、強力な抽象化を支援すると同時にうまく書くことで型検査を無限ループさせることができるオモシロ機能。
スターターセット
opam
パッケージマネージャ。使いづらい。
utop
つよいREPL。opamでインストールしよう。
merlin
LSPっぽいやつ。
variants
MetaOCaml
Multicore OCaml
豆知識
HERPではほぼ同様の構文のBuckleScriptを若干使用している。
ファンクタをガッツリ使っている。