preserves/_includes/cheatsheet-pexprs-plaintext.md

700 B

The definition of Atom is as given in the Preserves text syntax.

Document      :=  Expr* sp
Expr          :=  sp (Atom | Compound | Punct | Embedded | Annotated)
Compound      :=  Sequence | Record | Block | Group | Set
Punct         :=  `,` | `;` | `:`+

sp            :=  (space | tab | cr | lf)*

Sequence      :=   `[` Expr* Trailer sp `]`
Record        :=   `<` Expr* Trailer sp `>`
Block         :=   `{` Expr* Trailer sp `}`
Group         :=   `(` Expr* Trailer sp `)`
Set           :=  `#{` Expr* Trailer sp `}`

Trailer       :=  Annotation*

Embedded      :=  `#!` Expr
Annotated     :=  Annotation Expr
Annotation    :=  `@` Expr | `#` ((space | tab) linecomment) (cr | lf)