From 017e2e2eba3ef0c15521724c8bc8f57854ffd037 Mon Sep 17 00:00:00 2001 From: Marshall Lochbaum Date: Fri, 19 Jun 2020 13:15:10 -0400 Subject: Small fixes --- spec/grammar.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'spec') 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_ -- cgit v1.2.3