-
Notifications
You must be signed in to change notification settings - Fork 1
Open
Labels
help wantedExtra attention is neededExtra attention is needed
Description
Here are some possible ergonomic improvements.
- Set
active
as default so that users only need to marksilent
rules. And for silent rules, we can use some special character or naming style to make them clean. Combine lexer definitions and tokens.(implemented in unify lexical def and lexical token #56)To ensure all tokens are terminal, we only need to check if the reference graph is a DAG, and then inline all rules.To avoid generating extra lexers, we can delay the generation of lexers after the generation of parsers, and inline & generate lexers by need.
Combine parser definitions and fixpoints.(implemented in Auto infer fixpoints #47)We may automatically infer fixpoints. A possible algorithm is to find cycles in the reference graph and then mark all vertices in cycles as fixpoints.
- Remove
~
(sequence operator). Instead of writinge1 ~ e2
, we can simply writee1 e2
. - Ad-hoc lexical rule. For example,
"(" ~ sexprs ~ ")"
.
SchrodingerZhu and anqur
Metadata
Metadata
Assignees
Labels
help wantedExtra attention is neededExtra attention is needed