идентификатор-переменной |
|
(маленькая-буква {маленькая-буква | большая-буква | цифра | ' })<зарезервированный-идентификатор>
|
|
идентификатор-конструктора |
|
большая-буква {маленькая-буква | большая-буква | цифра | ' } |
|
зарезервированный-идентификатор |
|
case | class | data | default | deriving | do | else |
|
|
| |
if | import | in | infix | infixl | infixr | instance |
|
|
| |
let | module | newtype | of | tden | type | where | _ |
|
символ-переменной |
|
( символ {символ | :})<зарезервированный-оператор| тире>
|
|
символ-конструктора |
|
(: {символ | :})< зарезервированный-оператор>
|
|
зарезервированный-оператор |
|
.. | : | :: | = | \ | | | | | @ | |
|
|
|
|
|
|
идентификатор-переменной |
|
|
(переменные) |
идентификатор-конструктора |
|
|
(конструкторы) |
переменная-типа |
|
идентификатор-переменной |
(переменные типов) |
конструктор-типа |
|
идентификатор-конструктора |
(конструкторы типов) |
класс-типа |
|
идентификатор-конструктора |
(классы типов) |
идентификатор-модуля |
|
идентификатор-конструктора |
(модули) |
квалифицированный-идентификатор-переменной |
|
[ идентификатор-модуля . ] идентификатор-переменной |
|
квалифицированный-идентификатор-конструктора |
|
[идентификатор-модуля . ] идентификатор-конструктора |
|
квалифицированный-конструктор-типа |
|
[идентификатор-модуля . ] конструктор-типа |
|
квалифицированный-класс-типа |
|
[идентификатор-модуля . ] класс-типа |
|
квалифицированный-символ-переменной |
|
[идентификатор-модуля . ] символ-переменной |
|
квалифицированный-символ-конструктора |
|
[идентификатор-модуля . ] символ-конструктора |
|
десятичный-литерал |
|
цифра{цифра} |
|
восьмиричный-литерал |
|
восьмиричная-цифра{восьмиричная-цифра} |
|
шестнадцатиричный-литерал |
|
шестнадцатиричная-цифра{шестнадцатиричная-цифра} |
|
целый-литерал |
|
десятичный-литерал |
|
|
| |
0o восьмиричный-литерал | 0O восьмиричный-литерал |
|
|
| |
0x шестнадцатиричный-литерал | 0X шестнадцатиричный-литерал |
|
литерал-с-плавающей-точкой |
|
десятичный-литерал . десятичный-литерал [экспонента] |
|
|
| |
десятичный-литерал экспонента |
|
экспонента |
|
(e | E) [+ | -] десятичный-литерал |
|
символьный-литерал |
|
' (графический-символ<' | \> | пробел | эскейп-символ<\&>) ' |
|
строковый-литерал |
|
" {графический-символ<" | \> | пробел | эскейп-символ | разрыв}" |
|
эскейп-символ |
|
\ ( символ-эскейп | символ-ascii | десятичный-литерал | o восьмиричный-литерал | x шестнадцатиричный-литерал ) |
|
символ-эскейп |
|
a | b | f | n | r | t | v | \ | " | ' | & |
|
символ-ascii |
|
^управляющий-символ | NUL | SOH | STX | ETX | EOT | ENQ | ACK
|
|
|
| |
BEL | BS | HT | LF | VT | FF | CR | SO | SI | DLE |
|
|
| |
DC1 | DC2 | DC3 | DC4 | NAK | SYN | ETB | CAN |
|
|
| |
EM | SUB | ESC | FS | GS | RS | US | SP | DEL |
|
управляющий-символ |
|
большая-буква-ASCII | @ | [ | \ | ] | ^ | _ |
|
разрыв |
|
\ пробельный-символ {пробельный-символ}\ |
|