view tests/functor.lac @ 41:1405d8c26790

Beginning of functor elaboration
author Adam Chlipala <adamc@hcoop.net>
date Thu, 19 Jun 2008 16:04:28 -0400
parents e3d3c2791105
children b3fbbc6cb1e5
line wrap: on
line source
signature S = sig
        type t
        val z : t
        val s : t -> t
end

signature T = sig
        type t
        val three : t
end

signature F = functor (M : S) : T

structure F = functor (M : S) : T => struct
        type t = M.t
        val three = M.s (M.s (M.s M.z))
end

structure F2 : F = F