Command pigeon generates parsers in Go from a PEG grammar.
-
Updated
Nov 19, 2025 - Go
A grammar describes the syntax of a programming language, and might be defined in Backus-Naur form (BNF). A lexer performs lexical analysis, turning text into tokens. A parser takes tokens and builds a data structure like an abstract syntax tree (AST). The parser is concerned with context: does the sequence of tokens fit the grammar? A compiler is a combined lexer and parser, built for a specific grammar.
Command pigeon generates parsers in Go from a PEG grammar.
Generates generalised LL (GLL) and reduced size LR(1) parsers with matching lexers
tgcon generates struct field tag values as string constants.
An LALR parser generator for golang
Language Toolkit
A parser combinator library in Go
interactive parsing in GoKi / GoGi framework -- makes parsing fun again!
A pure go lexer and parser generator library
A Go package for both parsing and generating podcast feeds
Parser generator using Parsing Expression Grammar
Fast, high performance expression language and expression evaluation for Go
generates Go code for managing struct tags.