# type t = int * t;;
Error: The type abbreviation u is cyclic
# type t = { x: int; y: t };;
type t = { x : int; y : t; }

# type u = u option;;
Error: The type abbreviation u is cyclic
# type u = Some of u | None;;
type u = Some of u | None

だれか解説してくれ。