13 lines
553 B
Plaintext
13 lines
553 B
Plaintext
![]() |
ws:alias = [ \b\f\n\r\t\v];
|
||
|
comment:alias = ";" [^\n]*;
|
||
|
wsc:alias = ws | comment;
|
||
|
number = "-"? ("0" | [1-9][0-9]*) ("." [0-9]+)? ([eE] [+\-]? [0-9]+)?;
|
||
|
string = "\"" ([^\\"] | "\\" .)* "\"";
|
||
|
symbol = ([^\\ \n\t\b\f\r\v\"()\[\]#] | "\\" .)+;
|
||
|
list-form:alias = "(" wsc* (expression wsc*)* ")"
|
||
|
| "[" wsc* (expression wsc*)* "]";
|
||
|
list = list-form;
|
||
|
vector = "#" list-form;
|
||
|
expression:alias = number | string | symbol | list;
|
||
|
scheme = wsc* (expression wsc*)*;
|