Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Migrated to Confluence 4.0

Analysis

...

v4 uses adaptive LL(*) or ALL(*). It is pronounced "all star". (smile)

Parsing

  • Left recursion elimination and expression grammar simplification [ANTLR4:DONE] (Actually tested in v3 playground, not in v4 yet)
  • Adaptive LL(*), ALL(*) "all star", parsing DONE
  • Scannerless parsing
  • Error alternatives
  • Maybe ambiguous alt parsing, yielding parse forest
  • Improve tree pattern matching, rewrites; e.g., <"0":primary>
  • syntactic predicates ala PEGs; needed in token rules. ~ and ! are taken at the moment. perhaps the negate operator '-LetterOrDigit'; might as well at the positive version also: &LetterOrDigit.

Lexing

  • DFA-based / NFA-based Lexers
  • Lexer modes / contexts. "context STRING"
  • Long int based tokens instead of objects; use token adaptor
  • Unbuffered I/O

...

  • Use ST v4 to generate code [ANTLR4:DONE]
  • Create new code generation mechanism

...