gccrs
rust
gccrs | rust | |
---|---|---|
104 | 2,777 | |
2,506 | 100,462 | |
2.0% | 1.6% | |
9.8 | 10.0 | |
5 days ago | 4 days ago | |
C++ | Rust | |
GNU General Public License v3.0 only | 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.
gccrs
- Rust Needs an Official Specification
-
Why am I writing a Rust compiler in C?
The community has been very supportive of the gccrs (https://github.com/Rust-GCC/gccrs) project, which is the main project to write a Rust compiler written in C.
-
FreeBSD evaluating Rust's adoption into base system
There is a Rust front-end for GCC that is under active development [1]. If the chip vendors are not willing to develop and upstream a LLVM back-end then they can feel free to start contributing to it.
[1] https://rust-gcc.github.io/
-
Why do lifetimes need to be leaky?
That's why gccrs doesn't even consider lifetime checking a part of the language (they plan to use Polonius, too).
- Rust-GCC: GCC Front-End for Rust
-
How hard would it be to port the Rust toolchain to a new non-POSIX OS written in Rust and get it to host its own development? What would that process entail?
There's ongoing work on a Rust front-end for GCC (https://github.com/Rust-GCC/gccrs). Bit barebones right now -- ie, even core doesn't compile -- but there's funding, demand, and regular progress, so it'll only get better from there. Once gccrs can compile core, it should be ready to compile most of Rust, and thus if you've taught the calling conventions for C to GCC, you're golden.
-
How hard is it to write a front end for a more complex language like Rust or Kotlin?
I recommend checking out the GCC Rust frontend project.
-
Rust contributions for Linux 6.4 are finally merged upstream!
That is what theyre refering to, yes. The GitHub is named https://github.com/Rust-GCC/gccrs
-
GCC 13 and the State of Gccrs
- But this misses so much extra context information
3. Macro invocations there are really subtle rules on how you treat macro invocations such as this which is not documented at all https://github.com/Rust-GCC/gccrs/blob/master/gcc/rust/expan...
Some day I personally want to write a blog post about how complicated and under spec'd Rust is, then write one about the stuff i do like it such as iterators being part of libcore so i don't need reactive extensions.
- Break rust Easter Egg Merged Into gccrs
rust
- Rust's New Sort Algorithms
-
KEON is a human-readable serde format that syntactic similar to Rust
With some notable exceptions. I'll never love the turbofish [1] for example.
[1] https://github.com/rust-lang/rust/blob/master/tests/ui/parse...
-
2025’s Must-Know Tech Stacks
Rust
- Loco 0.14 on Cathyos: 始め方
-
Loco 0.14 on Cathyos: Getting started
Loco is a relatively new Rust web framework which first appeared around 2021. It is strongly inspired by Ruby on Rails, and designed to bring developers productivity as various functionality on routing, middlewares, and request handling. They aim to provide a modern and intuitive development experience.
-
Getting Started with Blockchain: A Guide for Beginners
Developer: Learn programming languages like Solidity (Ethereum) or Rust (Polkadot).
-
SSH port forwarding from within code
Port forwarding is a common technique used to access some service behind jump host from your local machine. It is a daily bread of many administrative tasks. In this post I'll show how to create such connections on demand from within Raku or Rust code (without relying on ssh -L system command).
-
Optimizing uint64_t Digit Counting: A Method that Beats Lemire's by up to 27%
This is for integer log 10, but could be adapted for number of digits. It needs a wrapper for 64 bit to invoke it multiple times, but most numbers in a JSON are small, so it might even be competitive; it needs only 4 cycles with enough instruction level parallelism.
I gathered this idea from the output of a superoptimizer, it was fun to figure out how it works. For spoilers, see [1].
[1] https://github.com/rust-lang/rust/blob/master/library/core/s...
- Weird Rust Expressions
-
Four limitations of Rust's borrow checker
At least based on the comments on lobste.rs [0] and /r/rust, these seem to be actively worked on and/or will be solved Soon (TM):
1. Checking does not take match and return into account: I think this should be addressed by Polonius? https://rust.godbolt.org/z/8axYEov6E
2. Being async is suffering: I think this is addressed by async closures, due to be stabilized in Rust 2024/Rust 1.85: https://rust.godbolt.org/z/9MWr6Y1Kz
3. FnMut does not allow reborrowing of captures: I think this is also addressed by async closures: https://rust.godbolt.org/z/351Kv3hWM
4. Send checker is not control flow aware: There seems to be (somewhat) active work to address this? No idea if there are major roadblocks, though. https://github.com/rust-lang/rust/pull/128846
[0]: https://lobste.rs/s/4mjnvk/four_limitations_rust_s_borrow_ch...
[1]: https://old.reddit.com/r/rust/comments/1hjo0ds/four_limitati...
What are some alternatives?
gcc-rust - a (WIP) Rust frontend for gcc / a gcc backend for rustc
carbon-lang - Carbon Language's main repository: documents, design, implementation, and related tools. (NOTE: Carbon Language is experimental; see README)
rustc_codegen_gcc - libgccjit AOT codegen for rustc
zig - General-purpose programming language and toolchain for maintaining robust, optimal, and reusable software.
mold - Mold: A Modern Linker 🦠
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).
rustc_codegen_gcc - libgccjit AOT codegen for rustc
Odin - Odin Programming Language
Rust-for-Linux - Adding support for the Rust language to the Linux kernel.
Elixir - Elixir is a dynamic, functional language for building scalable and maintainable applications
polonius - Defines the Rust borrow checker.
Rustup - The Rust toolchain installer