Bug#1134960: ITP: pgpg -- Parser generator and parsing library

Stephen Kitt <[email protected]>
Newsgroups gmane.linux.debian.devel.general
Message-ID <177720630516.867483.10657739815923184974.reportbug__19490.327236575$1777206467$gmane$org@heffalump.sk2.org>
Package: wnpp
Severity: wishlist
Owner: Stephen Kitt <[email protected]>, [email protected]
X-Debbugs-Cc: [email protected]

* Package name    : pgpg
  Version         : 1.0.0-1
  Upstream Author : John Kerl
* URL             : https://github.com/johnkerl/pgpg
* License         : unlicense
  Programming Lang: Go
  Description     : Parser generator and parsing library

 PGPG is the Pretty Good Parser Generator. Its goals are as follows:
 .
  * Implement a few basic algorithms.
  * Reuse code whenever possible, across multiple algorithms like
    LALR/LR.
  * Make good use of classes---e.g. lexer.match() rather than global
    match() which are commonly used in intro-to-parsing textbooks.
  * Be lucid above all else. Lexing/parsing is ubiquitous in the
    modern world, and forms a large part of our world. Yet sadly such
    tools are too often arcane and confusing. PGPG is transparent,
    inclusive, and explains itself openly.
  * Offer choices:
    - Sometimes a parser-generator is overkill---for simpler grammars,
      a hand-written lexer and a hand-written recursive-descent parser
      are quite satisfactory. PGPG offers reusable, easy-to-understand
      examples here.
    - Sometimes a hand-written lexer/parser is underkill---yet parser-
      generators can be complex and intimidating. Here, too, PGPG
      offers reusable, easy-to-understand examples.
    - PGPG offers classes that reduce code-duplication for various
      lex/parse implementations: you can reuse what you want, and
      hand-write what you want.
    - PGPG offers grammar-to-parser all in one process invocation, or
      parser-generate to language-independent storage (probably JSON),
      or traditional parser-generate directly to
      implementation-language code.


This is a new build-dependency for Miller.
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.