17 lines
533 B
Racket
17 lines
533 B
Racket
#lang brag
|
|
u-program: [/NEWLINE+] (u-expr [/NEWLINE+])*
|
|
u-expr:
|
|
u-series ; string series
|
|
| u-atom
|
|
| u-converting-num
|
|
| u-sexp
|
|
u-sexp:
|
|
/L_PAREN u-expr (/SEPERATOR u-expr)* /R_PAREN
|
|
| /L_PAREN [(/" "|/NEWLINE)+] u-expr (/G_SEPERATOR [(/" "|/NEWLINE)+] u-expr [(/" "|/NEWLINE)+])* /R_PAREN ; ??
|
|
u-series: (u-atom | u-sexp)+
|
|
u-converting-num: /NUM_CONVERTER (u-id | u-number)
|
|
u-atom: u-id | u-string | u-number | (NEWLINE+)
|
|
u-number: INTEGER | DECIMAL
|
|
u-id: ID
|
|
@u-string: u-char+
|
|
@u-char: CHAR | " "
|