annotate tests/open_functor.lac @ 198:ab86aa858e6c

'Option' datatype encoding
author Adam Chlipala <adamc@hcoop.net>
date Sat, 09 Aug 2008 19:23:31 -0400
parents 80ac94b54e41
children
rev   line source
adamc@146 1 signature S = sig
adamc@146 2 type t
adamc@146 3 val x : t
adamc@146 4 end
adamc@146 5
adamc@146 6 functor F (M : S) : S where type t = M.t = struct
adamc@146 7 type t = M.t
adamc@146 8 val x = M.x
adamc@146 9 end
adamc@146 10
adamc@146 11 structure M = F(struct
adamc@146 12 type t = int
adamc@146 13 val x = 0
adamc@146 14 end)
adamc@146 15
adamc@146 16 open M