comparison src/elab.sml @ 188:8e9f97508f0d

Datatype representation optimization
author Adam Chlipala <adamc@hcoop.net>
date Sun, 03 Aug 2008 19:49:21 -0400
parents d11754ffe252
children aa54250f58ac
comparison
equal deleted inserted replaced
187:fb6ed259f5bd 188:8e9f97508f0d
69 | CError 69 | CError
70 | CUnif of ErrorMsg.span * kind * string * con option ref 70 | CUnif of ErrorMsg.span * kind * string * con option ref
71 71
72 withtype con = con' located 72 withtype con = con' located
73 73
74 datatype datatype_kind =
75 Enum
76 | Default
77
74 datatype patCon = 78 datatype patCon =
75 PConVar of int 79 PConVar of int
76 | PConProj of int * string list * string 80 | PConProj of int * string list * string
77 81
78 datatype pat' = 82 datatype pat' =
79 PWild 83 PWild
80 | PVar of string * con 84 | PVar of string * con
81 | PPrim of Prim.t 85 | PPrim of Prim.t
82 | PCon of patCon * pat option 86 | PCon of datatype_kind * patCon * pat option
83 | PRecord of (string * pat * con) list 87 | PRecord of (string * pat * con) list
84 88
85 withtype pat = pat' located 89 withtype pat = pat' located
86 90
87 datatype exp' = 91 datatype exp' =