InfluxDB is the Time Series Platform where developers build real-time applications for analytics, IoT and cloud-native services. Easy to start, it is available in the cloud or on-premises. Learn more →
Lalrpop Alternatives
Similar projects and alternatives to lalrpop
-
-
-
SonarLint
Clean code begins in your IDE with SonarLint. Up your coding game and discover issues early. SonarLint is a free plugin that helps you find & fix bugs and security issues from the moment you start writing code. Install from your favorite IDE marketplace today.
-
-
-
-
-
-
InfluxDB
Build time-series-based applications quickly and at scale.. InfluxDB is the Time Series Platform where developers build real-time applications for analytics, IoT and cloud-native services. Easy to start, it is available in the cloud or on-premises.
-
-
-
oak
A typed parser generator embedded in Rust code for Parsing Expression Grammars (by ptal)
-
-
-
-
tao
A statically-typed functional language with generics, typeclasses, sum types, pattern-matching, first-class functions, currying, algebraic effects, associated types, good diagnostics, etc. (by zesterer)
-
-
-
-
terraform
Terraform enables you to safely and predictably create, change, and improve infrastructure. It is an open source tool that codifies APIs into declarative configuration files that can be shared amongst team members, treated as code, edited, reviewed, and versioned.
-
-
-
SaaSHub
SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives
lalrpop reviews and mentions
-
Contrext-free language parsing with procedural macros
How would you compare and contrast this with, say, lalrpop?
-
Tools for creating a programming language in rust
lalrpop is great. It's a completely different approach from nom, but for parsing a programming language, I would at least consider it. RustPython uses it.
-
Best languages to design a new language in?
I presume LALRPOP handles left recursion just fine.
-
Show HN: IQ” – jq for images (using rust, LALRPOP)
I wanted to share an experimental side project I have been working on for some time. I constantly use commands like `jq` and `yq` for processing structured data in my day job and I was curious if a similar idea could be applied to images.
Another goal of mine was to get some exposure to with rust. I discovered the LALRPOP parser generator which really helped moved the project along (https://github.com/lalrpop/lalrpop)
-
Writing a new programming language. Part II: Variables and expressions
The key point here is that we are going to depend on the lalrpop library to generate the parser based on the formal grammar we define. Note that we have it as part of the [build-dependencies] section and we only depend on a tiny utility crate called lalrpop-util at runtime. The reason for that is the main lalrpop "magic" would happen during the crate compilation (in the build.rs file) when lalrpop would generate the deterministic pushdown automaton based on our grammar. The code generation logic is not required to be part of our interpreter, we only need a few utility methods from the lalrpop-util for the automaton to operate. You might have noticed that we also enable the lexer feature of lalrpop, because we are going to use lexer provided by lalrpop as well (please refer to the Part I if you do not know what the lexer is).
-
Writing a new programming language. Part I: a bit of boring theory
We will apply the above theory in the next part of the tutorial and write the first part of our language. We are going to define the first version of the formal grammar using the lalrpop parser generation library, generate deterministic pushdown automaton in rust and write the interpreter to run our first program written in LR-language.
-
Hey Rustaceans! Got a question? Ask here! (29/2022)!
The two parser generators that I am aware of are lalrpop and PEG. There both great, and have seen some use by languages that have been written in Rust.
-
Domain Specific Language embedded in Rust
lalrpop
-
Hey Rustaceans! Got an easy question? Ask here (9/2022)!
parser generator: https://github.com/lalrpop/lalrpop
-
Analogues of nom crate.
And of course, there are always the parser generators if you want to go that route. But picking the right parsing library is dependent on the specific grammar you are dealing with. For instance, nom is great for parsing binary formats and simple grammars that Pratt parsers can handle (because the structure of the code will mimic the structure of the grammar), but it may not be ideal for complex grammars with 5 pages of EBNF! A declarative parser might be more appropriate for these grammars hence parser generators are also an option. lalrpop and pomelo fall under this category.
-
A note from our sponsor - InfluxDB
www.influxdata.com | 9 Feb 2023
Stats
lalrpop/lalrpop is an open source project licensed under Apache-2.0 or MIT which is not an OSI approved license.