OCaml

OCamlのfunctor

OCamlのfunctorがよくわからなかったので調べて理解した限りのことを書く。間違ってたらすみません。・declaration of structure module Module_name = struct (* implement *) end ・declaration of signature module type SIGNATURE_NAME = sig (* declare…

OCamlの二進数表現っぽいもの

ocamlで二進表現の型定義どうするのってぐぐってもそれらしい解説がついてるのが見つからなかったんだけど、やっぱり考えぬいて(アニメ見ながら3時間くらい考えた)以下の結論に至った。 type bnats = X | Y of bnats | Z of bnats type bnat = A | B of bn…

OCamlのコンストラクタ

OCamlのコンストラクタがよくわからない。オブジェクト指向言語ばかりやってた私にとっては(と言ってもC#とかVB.NETだけど)コンストラクタというのはクラスからインスタンスを作るときに呼び出されるメソッドのことなんだけど、関数型のこの子にとっては違…