comparison src/elab.sml @ 805:e2780d2f4afc

Mutual datatypes through Elaborate
author Adam Chlipala <adamc@hcoop.net>
date Sat, 16 May 2009 15:14:17 -0400
parents 8688e01ae469
children 7f871c03e3a1
comparison
equal deleted inserted replaced
804:10fe57e4a8c2 805:e2780d2f4afc
130 and edecl = edecl' located 130 and edecl = edecl' located
131 131
132 datatype sgn_item' = 132 datatype sgn_item' =
133 SgiConAbs of string * int * kind 133 SgiConAbs of string * int * kind
134 | SgiCon of string * int * kind * con 134 | SgiCon of string * int * kind * con
135 | SgiDatatype of string * int * string list * (string * int * con option) list 135 | SgiDatatype of (string * int * string list * (string * int * con option) list) list
136 | SgiDatatypeImp of string * int * int * string list * string * string list * (string * int * con option) list 136 | SgiDatatypeImp of string * int * int * string list * string * string list * (string * int * con option) list
137 | SgiVal of string * int * con 137 | SgiVal of string * int * con
138 | SgiStr of string * int * sgn 138 | SgiStr of string * int * sgn
139 | SgiSgn of string * int * sgn 139 | SgiSgn of string * int * sgn
140 | SgiConstraint of con * con 140 | SgiConstraint of con * con
152 withtype sgn_item = sgn_item' located 152 withtype sgn_item = sgn_item' located
153 and sgn = sgn' located 153 and sgn = sgn' located
154 154
155 datatype decl' = 155 datatype decl' =
156 DCon of string * int * kind * con 156 DCon of string * int * kind * con
157 | DDatatype of string * int * string list * (string * int * con option) list 157 | DDatatype of (string * int * string list * (string * int * con option) list) list
158 | DDatatypeImp of string * int * int * string list * string * string list * (string * int * con option) list 158 | DDatatypeImp of string * int * int * string list * string * string list * (string * int * con option) list
159 | DVal of string * int * con * exp 159 | DVal of string * int * con * exp
160 | DValRec of (string * int * con * exp) list 160 | DValRec of (string * int * con * exp) list
161 | DSgn of string * int * sgn 161 | DSgn of string * int * sgn
162 | DStr of string * int * sgn * str 162 | DStr of string * int * sgn * str