124 lines
1.5 KiB
Plaintext
124 lines
1.5 KiB
Plaintext
=====================================
|
|
empty
|
|
=====================================
|
|
|
|
()
|
|
|
|
---
|
|
|
|
(source
|
|
(block))
|
|
|
|
=====================================
|
|
single expression
|
|
=====================================
|
|
|
|
(1)
|
|
|
|
---
|
|
|
|
(source
|
|
(block
|
|
(integer)))
|
|
|
|
=====================================
|
|
multiple expressions separated by newline
|
|
=====================================
|
|
|
|
(
|
|
1
|
|
2
|
|
)
|
|
|
|
---
|
|
|
|
(source
|
|
(block
|
|
(integer)
|
|
(integer)))
|
|
|
|
=====================================
|
|
multiple expressions separated by semicolon
|
|
=====================================
|
|
|
|
(1;2)
|
|
|
|
---
|
|
|
|
(source
|
|
(block
|
|
(integer)
|
|
(integer)))
|
|
|
|
=====================================
|
|
multiple expressions separated by mixed separators
|
|
=====================================
|
|
|
|
(
|
|
1
|
|
|
|
;
|
|
|
|
2
|
|
)
|
|
|
|
---
|
|
|
|
(source
|
|
(block
|
|
(integer)
|
|
(integer)))
|
|
|
|
=====================================
|
|
leading semicolon
|
|
=====================================
|
|
|
|
(;1;2)
|
|
|
|
---
|
|
|
|
(source
|
|
(block
|
|
(integer)
|
|
(integer)))
|
|
|
|
=====================================
|
|
trailing semicolon
|
|
=====================================
|
|
|
|
(1;2;)
|
|
|
|
---
|
|
|
|
(source
|
|
(block
|
|
(integer)
|
|
(integer)))
|
|
|
|
=====================================
|
|
stab clauses
|
|
=====================================
|
|
|
|
(x -> x; y -> y
|
|
z -> z)
|
|
|
|
---
|
|
|
|
(source
|
|
(block
|
|
(stab_clause
|
|
(arguments
|
|
(identifier))
|
|
(body
|
|
(identifier)))
|
|
(stab_clause
|
|
(arguments
|
|
(identifier))
|
|
(body
|
|
(identifier)))
|
|
(stab_clause
|
|
(arguments
|
|
(identifier))
|
|
(body
|
|
(identifier)))))
|