Dragon

Jul 20, 2023

Combined C++ scanner/parser generator for LR compliant grammars

Combined scanner/parser generator for LR compliant grammar definitions.

The generated C++ parser class is used as a super class from which a parser implementation class must be derived. The implementation class implements the scanner feed methods but also all required semantic action method. dragon has been used for several large projects with complex grammar definitions about 200 productions/ 80 tokens . Since for those grammar defintions, the analyse phase to build up the parse table is quite CPU intensive, it is recommended to use state of the art hardware. dragon requires the base package to get compiled but also for the compilation of the generated C++ code.

It can be used for databases/cego and probably other applications.

Many more details are available at



Checkout these related ports:
  • Zziplib - Library to provide transparent read access to zipped files
  • Zydis - Fast and lightweight x86/x86-64 disassembler library
  • Zycore-c - Support library with platform independent types, macros, etc for Zydis
  • Zthread - Platform-independent object-oriented C++ threading library
  • Zookeeper - Coordination Service for Distributed Applications
  • Zls - Zig LSP implementation + Zig Language Server
  • Zfp - High throughput library for compressed floating-point arrays
  • Zeal - Offline documentation browser
  • Zapcc - C++ caching compiler based on clang
  • Zanata-platform - Web-based translation platform
  • Zanata-cli - Zanata Java command line client
  • Z88dk - Complete Z80/Z180 development kit
  • Z80ex - ZiLOG Z80 CPU emulator library
  • Z80asm - Assembler for the Z80 microprocessor
  • Z80-asm - Z80 assembly code assembler and disassembler