1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35
|
functor mkCore(
A :
sig
structure IntGrammar :
sig
structure Grammar :
sig
datatype symbol = TERM of int | NONTERM of int
end
structure SymbolAssoc :
sig
type key
end
sharing type SymbolAssoc.key = Grammar.symbol
end
end
)
=
struct
structure Grammar =
struct
datatype symbol = datatype A.IntGrammar.Grammar.symbol
end
structure IntGrammar =
struct
structure Grammar =
struct
datatype symbol = datatype A.IntGrammar.Grammar.symbol
end
structure SymbolAssoc =
struct
type key = A.IntGrammar.SymbolAssoc.key
end
end
end
|