diff options
| author | Alasdair Armstrong | 2017-07-26 00:42:50 +0100 |
|---|---|---|
| committer | Alasdair Armstrong | 2017-07-26 18:05:21 +0100 |
| commit | 7dd74b4786304efe22cc576f5c6f46368e220c52 (patch) | |
| tree | f4cbf069fe65fcfe2e7030a3d79585614c4ca27f /src/parse_ast.ml | |
| parent | ce2b3391539fba834105923488f09475e3a1e25a (diff) | |
Added syntax for existential types
Diffstat (limited to 'src/parse_ast.ml')
| -rw-r--r-- | src/parse_ast.ml | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/src/parse_ast.ml b/src/parse_ast.ml index 526dffa8..c2e550f4 100644 --- a/src/parse_ast.ml +++ b/src/parse_ast.ml @@ -144,18 +144,19 @@ atyp_aux = (* expressions of all kinds, to be translated to types, nats, orders | ATyp_fn of atyp * atyp * atyp (* Function type (first-order only in user code), last atyp is an effect *) | ATyp_tup of (atyp) list (* Tuple type *) | ATyp_app of id * (atyp) list (* type constructor application *) + | ATyp_exist of kid list * n_constraint * atyp and atyp = ATyp_aux of atyp_aux * l -type +and kinded_id_aux = (* optionally kind-annotated identifier *) KOpt_none of kid (* identifier *) | KOpt_kind of kind * kid (* kind-annotated variable *) -type +and n_constraint_aux = (* constraint over kind $_$ *) NC_fixed of atyp * atyp | NC_bounded_ge of atyp * atyp |
