view tests/datatype.ur @ 2049:459ccbf8cd08

When unifying constructor-level unification variables, also unify their kinds
author Adam Chlipala <adam@chlipala.net>
date Fri, 01 Aug 2014 16:11:36 -0400
parents f387d12193ba
children
line wrap: on
line source
datatype t = A | B

val a = A
val b = B

datatype foo = C of t

val c = C a

datatype list = Nil | Cons of {Head : int, Tail : list}

val nil = Nil
val l1 = Cons {Head = 0, Tail = nil}

datatype term = App of term * term | Abs of term -> term