Skip to content
/ yapb Public

YAPB: Yet Another Parser Builder (A Programmable LALR(1) Parser Builder in Haskell)

License

Notifications You must be signed in to change notification settings

kwanghoon/yapb

Repository files navigation

YAPB: Yet Another Parser Builder

A programmable parser builder system

  • Allows to write LALR(1) parser specifications in Haskell
  • Provides an automatic syntax completion method

Library, tools, and examples

  • yapb: a library for a programmable parser builder system
  • yapb-exe: a wrapper interface to YAPB
  • conv-exe: a grammar format utility for conversion of a readable grammar (.lgrm) format into the Haskell data format (.grm)
  • Examples:
    • parser-exe: an arithmetic parser
    • ambiguous-exe: an arithmetic parser with the ambiguous grammar but backed by precedence attributes
    • error-exe: a demo for error recovery by an interplay between a lexer and a parser through a monadic interface
    • syncomp-exe: a syntax completion server for Emacs

Applications using YAPB:

Download, build, and test

  $ git clone https://github.com/kwanghoon/yapb
  $ cd yapb
  $ stack build
  $ stack test

Tutorial

A list of benchmarks and YAPB version For the SCP paper (Science of Computer Programming 2023)

Reference

About

YAPB: Yet Another Parser Builder (A Programmable LALR(1) Parser Builder in Haskell)

Resources

License

Stars

Watchers

Forks

Packages

No packages published