combine
rlua
combine | rlua | |
---|---|---|
4 | 13 | |
1,265 | 1,677 | |
- | 0.6% | |
3.2 | 8.2 | |
22 days ago | 3 months ago | |
Rust | Rust | |
MIT License | 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.
combine
-
Domain Specific Language embedded in Rust
Combine is also nice to use and actively developed.
-
Hey Rustaceans! Got an easy question? Ask here (9/2022)!
https://crates.io/crates/combine is a decent alternative to Nom. I found it much easier to pick up. I was using it to implement our generalized placeholder syntax in SQLx (which I hope to actually finish at some point): https://github.com/launchbadge/sqlx/blob/a2eda2de2462876a160982e57d73103795e34aa2/sqlx-core/src/placeholders.rs
-
Chumsky, a parser combinator crate that makes writing error-tolerant parsers with recovery easy and fun!
Nice to see support for error recovery with parser combinators! I never got to the point of adding it in combine as I swapped out my language parser(s) to use LALRPOP instead (implementing error recovery for it instead).
-
Hey Rustaceans! Got an easy question? Ask here (42/2021)!
You may want to also look at some of the popular parser combinators like nom and combine. I don't think they do what you are suggesting, though.
rlua
-
Rust and Lua api
There's the rlua package for running lua in your rust app: https://github.com/amethyst/rlua
-
What is your favourite Rust specific feature that you miss in other languages?
Some sys crates do embed the source files, like rlua for example.
- Hey Rustaceans! Got an easy question? Ask here (9/2022)!
-
Lua: Good, Bad, and Ugly Parts
[1] - https://github.com/amethyst/rlua/blob/master/examples/guided_tour.rs
-
I hate automod and have a question
Yes though, given that a CCleaner/BleachBit-style situation is going to be I/O-bound, I'd probably go with rlua, PyO3, or rust-cpython for plugins.
-
Ketos: Lisp dialect scripting and extension language for Rust programs
I wrote up some rust low-level bindings for guile [1]. The problem is that Guile liberally uses setjmp/longjmp, which breaks rust destructors. It might be possible to fix this by wrapping every call the way rlua does [2], but I'm not familiar enough with Guile to know.
1: https://github.com/ysimonson/guile-sys
2: https://github.com/amethyst/rlua/issues/21
-
Rust's interface to the Lua programming language is called 'mlua'. not Lust. This should get fixed.
And.. another binding finally called rlua https://github.com/amethyst/rlua
-
Does rust have function works like eval?
hlua or rlua are what you want for Lua, rust-cpython or PyO3 for Python, rutie for Ruby, and possibly deno_core for JavaScript.
- Embedding Lisp in C++ – A Recipe
-
I open sourced a game I just released on Steam, written in Lua
Janet is what introduced me to Fennel. Conjure [1] sold me on Fennel over Janet. The Neovim community is rallying around Lua.
(And in fact, what sold me on Rust was its truly excellent Lua FFI support [2].)
[1]: https://github.com/Olical/conjure
[2]: https://github.com/amethyst/rlua
What are some alternatives?
nom - Rust parser combinator framework
mlua
pest - The Elegant Parser
hlua - Rust library to interface with Lua
lalrpop - LR(1) parser generator for Rust
janet - A dynamic language and bytecode vm
pom - PEG parser combinators using operator overloading without macros.
kaboom.js - 💥 JavaScript game library
chomp - A fast monadic-style parser combinator designed to work on stable Rust.
bincode - A binary encoder / decoder implementation in Rust.
git-journal - The Git Commit Message and Changelog Generation Framework :book:
msgpack-rust - MessagePack implementation for Rust / msgpack.org[Rust]