parsertl-playground
grmtools
parsertl-playground | grmtools | |
---|---|---|
1 | 2 | |
11 | 473 | |
- | 2.1% | |
9.5 | 7.7 | |
12 days ago | 9 days ago | |
GAP | Rust | |
Boost Software License 1.0 | GNU General Public License v3.0 or later |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
parsertl-playground
-
Show HN: Yacc/Lex editor/tester online
I'm building an online yacc/lex (LALR(1)) grammar editor/tester to help develop/debug/document grammars, the main repository is here https://github.com/mingodad/parsertl-playground and the online playground with several non trivial examples is here https://mingodad.github.io/parsertl-playground/playground/ .
Select a grammar/example from "Examples" select box and then click "Parse" to see a parser tree for the source in "Input source" editor.
It's based on https://github.com/BenHanson/gram_grep and https://github.com/BenHanson/lexertl14 .
Any feedback is welcome !
The grammars available so far (with varying state of correctness):
- Ada parser
grmtools
- Grmtools – Grammar and Parsing Libraries for Rust
-
A Deep Dive into PromQL — Promql Parser v0.1.0 Written in Rust is Now Available
prometheus-parser-rs implement the parser via pest, while promql-parser using grmtools, which is compatible with Yacc. promql-parser declares compatible with prometheus and covers most of the test cases in original Prometheus, which ensures you better compliance.
What are some alternatives?
JFlex - The fast scanner generator for Java™ with full Unicode support
c-compiler - A compiler that accepts any valid program written in C. It is made using Lex and Yacc. Returns a symbol table, parse tree, annotated syntax tree and intermediate code.
winflexbison - Main winflexbision repository
promql-parser - PromQL Rust parser
cparse - cparse is an LR(1) and LALR(1) parser generator
prometheus-parser-rs - a Rust library for parsing and validating Prometheus query expressions
ExprTK - C++ Mathematical Expression Parsing And Evaluation Library https://www.partow.net/programming/exprtk/index.html
kalem.rs - Fegeya Kalem.rs, Rust implementation of Kalem, work-in-progress.
lexertl14 - C++14 version of lexertl
greptimedb - An open-source, cloud-native, distributed time-series database with PromQL/SQL/Python supported. Available on GreptimeCloud.
logos - Create ridiculously fast Lexers
nom - Rust parser combinator framework