Mercurial > urweb
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' = |