rust-web3
rust
Our great sponsors
rust-web3 | rust | |
---|---|---|
4 | 2176 | |
1,222 | 77,139 | |
- | 1.7% | |
4.1 | 10.0 | |
26 days ago | 5 days 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.
rust-web3
-
ethers-rs VS rust-web3 - a user suggested alternative
2 projects | 26 Jan 2022
-
Hey Rustaceans! Got an easy question? Ask here (35/2021)!
If you're deploying on Ethereum or an Ethereum testnet, have a look at this example for the web3 crate: https://github.com/tomusdrw/rust-web3/blob/master/examples/contract.rs
rust
- Show HN: Mass Dissent – Easily send a letter to U.S. Congress representatives
-
Stop Comparing Rust to Old C++
The partial borrow issue is from a desire to assign names to tuple indices so you can access elements without sensitivity to their order. Without that, any change to the arrangement of components in an ECS archetype would affect downstream code attempting to query-iterate those tuples. Ideally I would use an intermediate struct, but as I discovered over the course of this project, rustc/LLVM aren't great about converting between tuples and structs. The only way to be sure you're not taking a perf hit would be to use a code-generated trait to rename the tuple fields, but you can't do that because traits don't give you direct field access and you can't partial borrow from function access.
There are three. The official one, mrustc (no borrow checker, but can essentially compile the official rustc) and GCC (can't really compile anything substantial yet). Only rustc is production-ready though.
-
Moving and re-exporting a Rust type can be a major breaking change
By following this issue to this issue comment, I think the reason is the sheer complexity of tuple struct constructor: * The syntax of tuple struct constructor is the same as either a function call or a constant, so to make life easier, the rust devs made it a function or a constant, i.e. declaring a tuple struct with pub fields also fills the value namespace with a function or constant. * Named field struct constructor is cannot be mistaken for a function call, so rust devs are free to let user construct them with type aliases.
Relevant rustc issue
-
Anybody else having this kind of colleague? Way to start a Monday!
Not that hard if you're writing Rust: https://github.com/rust-lang/rust/pull/29837 and the like.
-
Hey Rustaceans! Got a question? Ask here (5/2023)!
Ah thanks, yup the last comment in https://github.com/rust-lang/rust/issues/20671 is a much more concise version of my issue :)
Looks like https://github.com/rust-lang/rust/issues/86635 / https://github.com/rust-lang/rust/issues/20671.
-
Swift Achieved Dynamic Linking Where Rust Couldn't
Love the article.
In my mind I see the problem of dynamic linking in rust to have a bunch of overlap with the "I want this rust library to be exposed in my higher level GC'd language with minimal safety/handwritten bindings" problem.
My hunch is that the lack of expressiveness of the C ABI is holding back both. the thing I'd love to see some sort of "higher level than the C ABI" come out. And something like `wasm-bindgen`[0] to exist for more languages.
Here's a link to the rust "interopable_api" proposal! I don't understand all the implications, but it seems to be in the right direction https://github.com/rust-lang/rust/pull/105586
What are some alternatives?
carbon-lang - Carbon Language's main repository: documents, design, implementation, and related tools. (NOTE: Carbon Language is experimental; see README)
zig - General-purpose programming language and toolchain for maintaining robust, optimal, and reusable software.
Nim - Nim is a statically typed compiled systems programming language. It combines successful concepts from mature languages like Python, Ada and Modula. Its design focuses on efficiency, expressiveness, and elegance (in that order of priority).
ethers-rs - Complete Ethereum & Celo library and wallet implementation in Rust. https://docs.rs/ethers
Elixir - Elixir is a dynamic, functional language designed for building scalable and maintainable applications
rust-analyzer - A Rust compiler front-end for IDEs [Moved to: https://github.com/rust-lang/rust-analyzer]
Odin - Odin Programming Language
scala - Scala 2 compiler and standard library. For bugs, see scala/bug
mimalloc - mimalloc is a compact general purpose allocator with excellent performance.
go - The Go programming language
Rustup - The Rust toolchain installer
spaCy - 💫 Industrial-strength Natural Language Processing (NLP) in Python