annotate tests/datatypeMod.lac @ 159:1e382d10e832

Abstracting datatypes with signature ascription
author Adam Chlipala <adamc@hcoop.net>
date Thu, 24 Jul 2008 16:41:12 -0400
parents b4b70de488e9
children 870e8abbe3b9
rev   line source
adamc@157 1 structure M : sig datatype t = A | B end = struct
adamc@157 2 datatype t = A | B
adamc@157 3 end
adamc@157 4
adamc@158 5 val a = M.A
adamc@158 6
adamc@157 7 datatype u = datatype M.t
adamc@157 8
adamc@157 9 val a : M.t = A
adamc@157 10 val a2 : u = a
adamc@158 11
adamc@158 12 structure M2 = M
adamc@158 13 structure M3 : sig datatype t = datatype M.t end = M2
adamc@158 14 structure M4 : sig datatype t = datatype M.t end = M
adamc@158 15
adamc@158 16 val b : M3.t = M4.B
adamc@159 17
adamc@159 18 structure Ma : sig type t end = M