7.7 局所モジュール

(OCaml 2.00 〜)

let module module-name = module-expr in expr は、式 expr の評価中、局所的にモジュール式 module-expr を識別子 module-name に束縛します。 expr の値を返します。例を示します。

let remove_duplicates comparison_fun string_list =
  let module StringSet =
    Set.Make(struct type t = string
                    let compare = comparison_fun end) in
  StringSet.elements
    (List.fold_right StringSet.add string_list StringSet.empty)