1 structure Set
= struct datatype Set
= S
end
3 signature FINMAPEQ
= sig type map
val dom
: map
-> Set
.Set
end
5 functor FinMapEq() = struct datatype map
= M
fun dom m
= Set
.S
end
9 structure FinMapEq
: FINMAPEQ
12 functor Tools (): TOOLS
= struct structure FinMapEq
= FinMapEq() end
15 functor Basics(structure Tools
: sig
16 structure FinMapEq
: sig type map
val dom
: map
-> Set
.Set
end
20 functor Basics(structure Tools
: TOOLS
) =
22 structure Tools
= Tools
25 functor KitCompiler() =
27 structure Tools
= Tools()
28 structure Basics
= Basics(structure Tools
= Tools
)
31 structure K
= KitCompiler()