Change log of Grappa

Version 2.2 (September 13, 2017)

  • PSR parser generator
    • now supports the new lPSR ("lookahead PSR") parser generator, inspired by LR(1) parsing for Chomsky grammars
    • The parser generator tries to minimize the number of parameters needed for each state by using so-called relative node references. They refer to nodes through their visiting edges on the edge stack. The new -allparams option forces the LaTeX generator to generate (more readable) CFA representations that are similar to the ones used in the ICGT'17 and GCM'17 papers and without any relative node references.

Version 2.1 (June 10, 2017)

  • PSR parser generator
    • now supports all PSR grammars, even those where edge look-ups do not have a determining node. Generates a specific graph class in these cases that uses hash tables for speeding up edge look-ups
  • PSR parsing
    • runs in linear time for all PSR grammars by using hash tables where necessary. Use -nohash to omit hash tables in these cases
  • added blowball example used in the GCM'17 paper
  • uniform way to measure parser runtime, used for the GCM'17 paper

Version 2.0 (April 23, 2017)

  • PSR parser generator
    • does not yet support grammars where edge look-ups do not have a determining node
  • PSR parsing
    • supports determining nodes, but not yet hash-tables or iteration over candidates if determining nodes are missing

Version 1.0

  • PTD parser generator
  • PTD parsing