Ross ROSS = Recommend OSS · open-source software intelligence for agents

Engelberg/instaparse

None observed · 2026-08-28

github.com/Engelberg/instaparse · Clojure · EPL-1.0 (copyleft) observed · 2026-08-28

Health v2 · maintenance only

32/100

  • Activity 0
  • Release rhythm 35
  • Longevity 100

Flags: no_releases

How is this computed?

round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10) — computed 2026-09-02. Adoption (stars, forks) is never an input.

  • gap_med: n/a
  • age_days: 4959
  • days_rel: n/a
  • days_push: 825
  • n_releases_24m: 0

Full methodology

Adoption not part of the score

2822 stars · 153 forks observed · 2026-08-28

What it is AI-extracted, prompt v1, taxonomy v1, 2026-08-30, confidence not recorded

Instaparse is a Clojure/ClojureScript library that turns context-free grammars written in standard EBNF or ABNF notation into executable parsers that map input strings to parse trees. It handles any context-free grammar, including left-recursive and ambiguous ones, and offers hiccup/enlive output, lookahead extensions, full parse enumeration, and detailed error reporting.

Use cases

  • parse strings with a context-free grammar in Clojure
  • turn an EBNF or ABNF grammar into a working parser
  • build a parser for a small DSL without hand-writing a lexer
  • handle left-recursive or ambiguous grammars and enumerate all parses
  • debug a grammar that fails to match a string
  • produce parse trees in hiccup or enlive format
  • extend a grammar with lookahead and negative lookahead

When to choose

  • You want to go from a written grammar to an executable parser with almost no boilerplate in Clojure or ClojureScript
  • Your grammar is left-recursive, ambiguous, or otherwise hard for hand-rolled or LL/LR tools to handle
  • You need to inspect all possible parses while designing or debugging a grammar
  • You prefer declarative EBNF/ABNF notation over building parsers combinator by combinator

When to avoid

  • You need a hand-tuned lexer/parser generator for maximum throughput on very large inputs
  • You require strict PEG semantics or streaming/incremental parsing
  • You are working outside Clojure/ClojureScript (JVM or JavaScript runtimes)
  • Regular expressions are sufficient for your pattern-matching needs

Facets

library · maturity stable

parser parsers programming-languages developer-tools jvm browser clojure clojurescript context-free-grammar ebnf abnf parser-combinator parse-tree parser-generator peg-lookahead ambiguous-grammars dsl-parsing nodejs

1 source

Member repositories

RepositoryRoleHealth v2
Engelberg/instaparsemain32

For agents

markdown · JSON · MCP: product_card(name="Engelberg/instaparse")

Data as of 2026-08-30T08:39:29.467469+00:00 · Report a problem