summaryrefslogtreecommitdiff
path: root/language/l2.ott
diff options
context:
space:
mode:
Diffstat (limited to 'language/l2.ott')
-rw-r--r--language/l2.ott10
1 files changed, 9 insertions, 1 deletions
diff --git a/language/l2.ott b/language/l2.ott
index 76fc0c77..70423cf5 100644
--- a/language/l2.ott
+++ b/language/l2.ott
@@ -1000,10 +1000,18 @@ effect_opt :: 'Effect_opt_' ::=
| :: :: pure {{ com sugar for empty effect set }}
| effectkw effect :: :: effect
+% Generate a pexp, but from slightly different syntax (= rather than ->)
+pexp_funcl :: 'Pat_funcl_' ::=
+ {{ auxparam 'a }}
+ {{ icho ('a pexp) }}
+ {{ lem (pexp 'a) }}
+ | pat = exp :: :: exp {{ ichlo (Pat_aux (Pat_exp [[pat]] [[exp]],Unknown)) }}
+ | pat when exp1 = exp :: :: when {{ ichlo (Pat_aux (Pat_when [[pat]] [[exp1]] [[exp]],Unknown)) }}
+
funcl :: 'FCL_' ::=
{{ com function clause }}
{{ aux _ annot }} {{ auxparam 'a }}
- | id pat = exp :: :: Funcl
+ | id pexp_funcl :: :: Funcl
fundef :: 'FD_' ::=