view tests/datatype.ur @ 2184:1ecef02f67c5

More Elaborate work to avoid instantiating unification variables with out-of-scope regular variables
author Adam Chlipala <adam@chlipala.net>
date Sat, 24 Oct 2015 17:23:07 -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