diff options
| author | Marshall Lochbaum <mwlochbaum@gmail.com> | 2021-11-29 20:55:22 -0500 |
|---|---|---|
| committer | Marshall Lochbaum <mwlochbaum@gmail.com> | 2021-11-29 20:55:22 -0500 |
| commit | fb3580660898306105c2e1f041f29bbdb9006210 (patch) | |
| tree | b704efe38eb38c0ebfdc3c7cbb8a37eba52be953 /docs/spec/grammar.html | |
| parent | a7148422c8f4a69134263b4d37d05499996aaa7c (diff) | |
Remove return (→) from the spec
Diffstat (limited to 'docs/spec/grammar.html')
| -rw-r--r-- | docs/spec/grammar.html | 4 |
1 files changed, 1 insertions, 3 deletions
diff --git a/docs/spec/grammar.html b/docs/spec/grammar.html index 99058319..d28fa55b 100644 --- a/docs/spec/grammar.html +++ b/docs/spec/grammar.html @@ -32,12 +32,10 @@ </span> <span class='Function'>|</span> <span class='Function'>Operand</span> <span class='Modifier2'>_mod2_</span> <span class='Comment'># Left partial application </span> <span class='Function'>|</span> <span class='Modifier'>_m</span> <span class='Function'>ASGN</span> <span class='Modifier'>_m1Expr</span> </pre> -<p>Functions can be formed by fully applying modifiers, as trains, or with the return token <code><span class='Gets'>→</span></code>, which behaves syntactically like a 1-modifier whose operand must be an identifier. Modifiers are left-associative, so that the left operand (<code><span class='Function'>Operand</span></code>) can include modifier applications but the right operand (<code><span class='Value'>subject</span> <span class='Function'>|</span> <span class='Function'>Func</span></code>) cannot. Trains are right-associative, but bind less tightly than modifiers. Assignment is not allowed in the top level of a train: it must be parenthesized.</p> +<p>Functions can be formed by fully applying modifiers or as trains. Modifiers are left-associative, so that the left operand (<code><span class='Function'>Operand</span></code>) can include modifier applications but the right operand (<code><span class='Value'>subject</span> <span class='Function'>|</span> <span class='Function'>Func</span></code>) cannot. Trains are right-associative, but bind less tightly than modifiers. Assignment is not allowed in the top level of a train: it must be parenthesized.</p> <pre><span class='Function'>Derv</span> <span class='Function'>=</span> <span class='Function'>Func</span> <span class='Function'>|</span> <span class='Function'>Operand</span> <span class='Modifier'>_mod1</span> <span class='Function'>|</span> <span class='Function'>Operand</span> <span class='Modifier2'>_mod2_</span> <span class='Paren'>(</span> <span class='Value'>subject</span> <span class='Function'>|</span> <span class='Function'>Func</span> <span class='Paren'>)</span> - <span class='Function'>|</span> <span class='Function'>Return</span> -<span class='Function'>Return</span> <span class='Function'>=</span> <span class='Paren'>(</span> <span class='Function'>NAME</span> <span class='Function'>|</span> <span class='String'>"𝕊"</span> <span class='Function'>|</span> <span class='String'>"𝕣"</span> <span class='Paren'>)</span> <span class='String'>"→"</span> <span class='Function'>Operand</span> <span class='Function'>=</span> <span class='Value'>subject</span> <span class='Function'>|</span> <span class='Function'>Derv</span> <span class='Function'>Fork</span> <span class='Function'>=</span> <span class='Function'>Derv</span> |
