10. 存在型=型パラメータを隠せる Objective Caml version 3.13.0-gadt (2010-10-22) # type t = 'a list;; Error: Unbound type parameter 'a # type t = List : 'a list -> t;; type t = List : 'a list -> t ’ a が存在型 11. 例えばコンビネーターの型 type 'a event = Return of 'a | Join of 'a event event | Choose of 'a event list | Guard of unit -> 'a event | Wrap of ('b -> 'a) * 'b event あれ?書けないぞ。 12. GADTなら大丈夫 type 'a event = Return : 'a