 
 
 
| Character Class | Notation Used | Default Members | 
| upper_case | UC | all upper case letters | 
| underline | UL | _ | 
| lower_case | LC | all lower case letters | 
| digit | N | digits | 
| blank_space | BS | space, tab and nonprintable ASCII characters | 
| end_of_line | NL | line feed | 
| atom_quote | AQ | ' | 
| string_quote | SQ | " | 
| list_quote | LQ | |
| radix | RA | |
| ascii | AS | |
| solo | SL | ! ;  | 
| special | DS | ( [ { ) ] } , |  | 
| line_comment | CM | % | 
| escape | ES | \ | 
| first_comment | CM1 | / | 
| second_comment | CM2 | * | 
| symbol | SY | # + - . : < = > ? @ ^ ` ~ $ &  | 
| terminator | TS | 
| Group Type | Notation | Valid Characters | 
| alphanumerical | ALP | UC UL LC N | 
| any character | ANY | |
| non escape | NES | any character except escape | 
| sign | SGN | + - | 
ATOM    = (LC ALP*)
        | (SY | CM1 | CM2 | ES)+
        | (AQ (NES | ES ANY+)* AQ)
        | SL
        | []
        | {}
        | |
INT = [SGN] N+
INTBAS = [SGN] N+ (AQ | RA) (N | LC | UC)+The base must be an integer between 1 and 36 included, the value being valid for this base.
INTBAS = [SGN] 0 (b | o | x) (N | LC | UC)+which allows binary, octal and hexadecimal numbers respectively.
INTCHAR = [SGN] 0 (AQ | RA) ANY | AS ANYThe value of the integer is the character code of the last character.
RAT = [SGN] N+ UL N+
FLOAT = [SGN] N+ . N+ [ (e | E) [SGN] N+ | Inf ]
      | [SGN] N+        (e | E) [SGN] N+
checks are performed that the numbers are in a valid range.BREAL = FLOAT UL UL FLOATwhere the first float must be less or equal to the second.
BS*) is allowed between the sign and the following digits.STRING = SQ (NES | ES ANY+ | SQ BS* SQ)* SQBy default, consecutive strings are concatenated into a single string. This behaviour can be disabled by the syntax option doubled_quote_is_quote, which causes doubled quotes to be interpreted as a single occurrence of the quote within the string.
LIST = LQ (NES | ES ANY+ | LQ BS* LQ)* LQBy default, consecutive character lists are concatenated into a single character list. This behaviour can be disabled by the syntax option doubled_quote_is_quote, which causes doubled quotes to be interpreted as a single occurrence of the quote within the string.
VAR = (UC | UL) ALP*
EOCL = . (BS | NL | <end of file>) | TS | <end of file>
| Escape Sequence | Result | 
| ES a | ASCII alert (7) | 
| ES b | ASCII backspace (8) | 
| ES f | ASCII form feed (12) | 
| ES n | ASCII newline (10) | 
| ES r | ASCII carriage return (13) | 
| ES t | ASCII tabulation (9) | 
| ES v | ASCII vertical tab (11) | 
| ES e | ASCII escape (27) | 
| ES d | ASCII delete (127) | 
| ES ES | the ES character itself | 
| ES AQ | the AQ character itself | 
| ES SQ | the SQ character itself | 
| ES LQ | the LQ character itself | 
| ES NL | ignored | 
| ES c(BS|NL)* | ignored | 
| ES three octal digits | character whose character code is the given octal value | 
| ES xhex digits ES | character whose character code is the given hexadecimal value | 
 
 
