From 4b9b761cc990f9247083ea28a32d9123bb752818 Mon Sep 17 00:00:00 2001 From: Marshall Lochbaum Date: Sat, 18 Jul 2020 23:35:02 -0400 Subject: Add a main repository link to html files and titles to spec files --- docs/spec/grammar.html | 2 ++ 1 file changed, 2 insertions(+) (limited to 'docs/spec/grammar.html') diff --git a/docs/spec/grammar.html b/docs/spec/grammar.html index 09d0bafa..8a3ead18 100644 --- a/docs/spec/grammar.html +++ b/docs/spec/grammar.html @@ -1,4 +1,6 @@ + +

Specification: BQN grammar

BQN's grammar is given below. Terms are defined in a BNF variant. However, handling special names properly is possible but difficult in BNF, so they are explained in text along with the braced block grammar.

The symbols s, F, _m, and _c_ are identifier tokens with subject, function, 1-modifier, and 2-modifier classes respectively. Similarly, sl, Fl, _ml, and _cl_ refer to literals and 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, explicit definitions and valueless results stemming from ·, or 𝕨 in a monadic brace function, can be used as statements but not expressions.

-- cgit v1.2.3