マジメな話は省略、主に自分の話だけメモ 飲み会は2日目だけ参加しました。 kinabaさん→id:osiire さん、 「リストの重複を省く関数(多相的)を作るときに Setモジュールが使えない」 OCaml の Set モジュールが多相的に使えない問題。 let uniq xs cmp = let module ASet = Set.Make ( struct type t = 'a (* 'a is unbound *) let compare = cmp end) in ASet.elements (List.fold_right ASet.add xs ASet.empty);; OCaml には scoped type variable がないから駄目なんじゃね? class の 型引数を scoped type variable として使えない? ムリポ class ['a]