pest
Iron
pest | Iron | |
---|---|---|
42 | 8 | |
4,370 | 6,122 | |
1.3% | 0.0% | |
7.4 | 0.0 | |
7 days ago | over 1 year ago | |
Rust | Rust | |
Apache License 2.0 | MIT License |
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.
pest
-
nom > regex
And some related parser tools: - https://github.com/kevinmehall/rust-peg - https://github.com/pest-parser/pest - https://github.com/lalrpop/lalrpop
-
Jasmine, A rust-like programming language that compiles to Java
I had recently completed the first year of my Computer Science class at school and will begin my second year soon. My schools' class forces the use of Java programming language, and I absolutely hated it. So, over the course of a little less than a month, I wrote my own programming language, in Rust (objectively best programming language), using pest, to be as similar to Rust as possible, but compiling to Java.
- Restoration of the pest3 work effort 🙌 · pest-parser/pest · Discussion #885
-
What is the state of the art for creating domain-specific languages (DSLs) with Rust?
I second pest.rs. Using it is fairly intuitive and there's also a live playground on their website which is great for quickly developing and testing your AST (abstract syntax tree) parser for whatever language you're implementing.
- pest v2.6.0 released with a new meta-grammar feature (node tags)
-
Finding a Crate to Help with Terminal Program Interface
This is where you'll run into trouble. People who write parsing-related Rust crates generally write things like pest that expect their syntax to be defined completely at compile time so the parser can be run through the compiler's optimizers for best performance.
-
easy way to produce a parser
Give https://pest.rs a try.
-
What is your opinion about lifetime of data generated from a parsing
For now I have used pest to generate an AST that borrows from the given input. But if I can manage to make the parser generic over the return type it may be worth a refactoring.
- Is there a parsing library (lexer?) which can handle generic tokens?
- v2.5.0: introducing `pest_debugger` · Discussion #739 · pest-parser/pest
Iron
-
Options for thread-per-request or thread-per-connection web servers?
I've written many things using Iron and it's been fine. It's not particularly developed any more but I am not aware of any major outstanding issues.
-
Rocket v0.5-rc3 is out!
I don't miss the time when we basically only had Iron
-
Which Rust web framework to choose in 2022 (with code examples)
iron
-
How do I chiose rust web framework in 2022?
There're many web framework in rust, such as SergioBenitez/Rocket , actix/actix-web ,poem-web/poem , iron/iron . How do I chiose, anyone suggestion?
-
Noob Help
I'm not sure which definition of backend you are thinking of here. In case you simply mean "server side", here are a couple of libraries that might be of use: iron - been a while since I used it, used it for a couple smaller projects rocket (nightly only) - no personal experience, but a lot of people seem to like it diesel - a bit complex to wrap your head around, but once you get the idea it's really nice. Definitely check out the examples.
-
Whats your favourite open source Rust project that needs more recognition?
it's taken by a web framework https://github.com/iron/iron
-
Building a shared vision for Async Rust
Your comment touches on a few misconceptions I see a lot.
Firstly, `reqwest` exposes both an async and a synchronous API, allowing the developer to choose which one to use. They are largely interchangeable code-wise. [1]
Secondarily, and more broadly, async is possible to opt out of. You must understand that most web and network related libraries will be async by default for performance, because people who write in Rust and people who write web servers typically care greatly about performance. This is the intersection of those two groups. That being said, there are options outside of that ecosystem. [2]
If you truly want to use an asynchronous library without migrating your application to run entirely on an async runtime like tokio, you can run it inside of a synchronous function without much trouble. I've put together a playground link for you. [3]
1. https://docs.rs/reqwest/0.11.2/reqwest/blocking/index.html
2. Iron: https://github.com/iron/iron
-
Porting a serverless chatbot from Python to Rust
There are several web frameworks for Rust: Rocket, Actix, Warp, Iron - but only Actix has released a stable 1.0 release, and there has been considerable controversy over how it uses unsafe Rust.
What are some alternatives?
nom - Rust parser combinator framework
actix-web - Actix Web is a powerful, pragmatic, and extremely fast web framework for Rust.
lalrpop - LR(1) parser generator for Rust
Rocket - A web framework for Rust.
rust-peg - Parsing Expression Grammar (PEG) parser generator for Rust
Gotham - A flexible web framework that promotes stability, safety, security and speed.
chumsky - Write expressive, high-performance parsers with ease.
Sapper - A lightweight web framework built on hyper, implemented in Rust language.
pom - PEG parser combinators using operator overloading without macros.
The FastCGI Rust implementation. - Native Rust library for FastCGI
combine - A parser combinator library for Rust
frank_jwt - JSON Web Token implementation in Rust.