aboutsummaryrefslogtreecommitdiff
path: root/spec/grammar.md
diff options
context:
space:
mode:
authorMarshall Lochbaum <mwlochbaum@gmail.com>2020-06-19 13:15:10 -0400
committerMarshall Lochbaum <mwlochbaum@gmail.com>2020-06-19 13:15:10 -0400
commit017e2e2eba3ef0c15521724c8bc8f57854ffd037 (patch)
tree735791a370223ea2297159bb7546d59f99152ca2 /spec/grammar.md
parent2d6e5a6ad2fcc77289fb0a8fd34b0bf4cdbd035d (diff)
Small fixes
Diffstat (limited to 'spec/grammar.md')
-rw-r--r--spec/grammar.md4
1 files changed, 2 insertions, 2 deletions
diff --git a/spec/grammar.md b/spec/grammar.md
index 8135f70a..f375105a 100644
--- a/spec/grammar.md
+++ b/spec/grammar.md
@@ -2,7 +2,7 @@ BQN's grammar is given below. All terms except `BraceFunc` `_braceMod` `_braceCo
The symbols `v`, `F`, `_m`, and `_c_` are identifier tokens with value, function, modifier, and composition classes respectively. Similarly, `vl`, `Fl`, `_ml`, and `_cl_` refer to value literals (numeric and character literals, or primitives) of those classes. While names in the BNF here follow the identifier naming scheme, this is informative only: syntactic classes are no longer used after parsing and cannot be inspected in a running program.
-A program is a list of statements. Almost all statements are expressions. However, valueless results stemming from "·", or "𝕨" in a monadic brace function, can be used as statements but not expressions.
+A program is a list of statements. Almost all statements are expressions. However, valueless results stemming from `·`, or `𝕨` in a monadic brace function, can be used as statements but not expressions.
PROGRAM = ⋄? ( ( STMT ⋄ )* STMT ⋄? )?
STMT = EXPR | nothing
@@ -19,7 +19,7 @@ Here we define the "atomic" forms of functions and operators, which are either s
list = "⟨" ⋄? ( ( EXPR ⋄ )* EXPR ⋄? )? "⟩"
value = atom | ANY ( "‿" ANY )+
-Starting at the highest-order objects, modifiers and compositions have fairly simple syntax. In most cases the syntax for `←` and `↩` is the same, but some special forms are defined only for one of them.
+Starting at the highest-order objects, modifiers and compositions have fairly simple syntax. In most cases the syntax for `←` and `↩` is the same, but only `↩` can be used for modified assignment.
ASGN = "←" | "↩"
_cmpExp_ = _comp_