Skip to content

v0.4.0-beta.1

Pre-release
Pre-release
Compare
Choose a tag to compare
@DiscreteTom DiscreteTom released this 07 Jan 04:57
· 1620 commits to main since this release

Highlight Features

  • LR parser support conflict detection (for reduce-shift conflicts and reduce-reduce conflicts), and will try to auto resolve those conflicts by LR-1 peeking.
  • Add ParserBuilder.generateResolver to generate code to manually resolve conflicts which can not be auto resolved.
  • DFA will cache computed states on the fly to optimize performance. You can also use DFA.calculateAllStates to calculate and cache all states ahead of time.
  • ASTNode can be serialized to a JSON object to co-work with other tools (e.g. compiler backend libs).

TODO

  • Optimize errors and output.
  • Add wiki and Chinese documents.
  • Optimize test code.

CHANGELOG

For detailed information, see CHANGELOG.