Package: pgpg
Version: 1.0.0-1
Architecture: amd64
Maintainer: Ubuntu Developers <ubuntu-devel-discuss@lists.ubuntu.com>
Original-Maintainer: Debian Go Packaging Team <team+pkg-go@tracker.debian.org>
Installed-Size: 12948
Built-Using: golang-1.26 (= 1.26.3-2)
Static-Built-Using: golang-1.26 (= 1.26.3-2)
Section: devel
Priority: optional
Homepage: https://github.com/johnkerl/pgpg
Description: Parser generator and parsing library (program)
 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 package contains the parser generators and associated tools.
