Mercurial > urweb
comparison src/source.sml @ 34:44b5405e74c7
Elaborating module projection
author | Adam Chlipala <adamc@hcoop.net> |
---|---|
date | Tue, 17 Jun 2008 16:38:54 -0400 |
parents | e6ccf961d8a3 |
children | e3d3c2791105 |
comparison
equal
deleted
inserted
replaced
33:535c324f0b35 | 34:44b5405e74c7 |
---|---|
47 | 47 |
48 | TFun of con * con | 48 | TFun of con * con |
49 | TCFun of explicitness * string * kind * con | 49 | TCFun of explicitness * string * kind * con |
50 | TRecord of con | 50 | TRecord of con |
51 | 51 |
52 | CVar of string | 52 | CVar of string list * string |
53 | CApp of con * con | 53 | CApp of con * con |
54 | CAbs of string * kind * con | 54 | CAbs of string * kind * con |
55 | 55 |
56 | CName of string | 56 | CName of string |
57 | 57 |
59 | CConcat of con * con | 59 | CConcat of con * con |
60 | 60 |
61 | CWild of kind | 61 | CWild of kind |
62 | 62 |
63 withtype con = con' located | 63 withtype con = con' located |
64 | |
65 datatype exp' = | |
66 EAnnot of exp * con | |
67 | |
68 | EPrim of Prim.t | |
69 | EVar of string | |
70 | EApp of exp * exp | |
71 | EAbs of string * con option * exp | |
72 | ECApp of exp * con | |
73 | ECAbs of explicitness * string * kind * exp | |
74 | |
75 | ERecord of (con * exp) list | |
76 | EField of exp * con | |
77 | |
78 withtype exp = exp' located | |
79 | 64 |
80 datatype sgn_item' = | 65 datatype sgn_item' = |
81 SgiConAbs of string * kind | 66 SgiConAbs of string * kind |
82 | SgiCon of string * kind option * con | 67 | SgiCon of string * kind option * con |
83 | SgiVal of string * con | 68 | SgiVal of string * con |
88 | SgnVar of string | 73 | SgnVar of string |
89 | 74 |
90 withtype sgn_item = sgn_item' located | 75 withtype sgn_item = sgn_item' located |
91 and sgn = sgn' located | 76 and sgn = sgn' located |
92 | 77 |
78 datatype exp' = | |
79 EAnnot of exp * con | |
80 | |
81 | EPrim of Prim.t | |
82 | EVar of string list * string | |
83 | EApp of exp * exp | |
84 | EAbs of string * con option * exp | |
85 | ECApp of exp * con | |
86 | ECAbs of explicitness * string * kind * exp | |
87 | |
88 | ERecord of (con * exp) list | |
89 | EField of exp * con | |
90 | |
91 withtype exp = exp' located | |
92 | |
93 datatype decl' = | 93 datatype decl' = |
94 DCon of string * kind option * con | 94 DCon of string * kind option * con |
95 | DVal of string * con option * exp | 95 | DVal of string * con option * exp |
96 | DSgn of string * sgn | 96 | DSgn of string * sgn |
97 | DStr of string * sgn option * str | 97 | DStr of string * sgn option * str |
98 | 98 |
99 and str' = | 99 and str' = |
100 StrConst of decl list | 100 StrConst of decl list |
101 | StrVar of string | 101 | StrVar of string |
102 | StrProj of str * string | |
102 | 103 |
103 withtype decl = decl' located | 104 withtype decl = decl' located |
104 and str = str' located | 105 and str = str' located |
105 | 106 |
106 type file = decl list | 107 type file = decl list |