-
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.
-
CodeRabbit
CodeRabbit: AI Code Reviews for Developers. Revolutionize your code reviews with AI. CodeRabbit offers PR summaries, code walkthroughs, 1-click suggestions, and AST-based analysis. Boost productivity and code quality across all major languages with each PR.
-
Relevant
-
Rust doesn't have similar obscure details? May I interest you with the Rustonomicon?
-
Kind of sounds like whatever library you were using provided leaky abstractions. Something like cppcoro provides really good abstractions for coroutines, the user really doesn't need to understand why any of it works.
-
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.
-
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.
-
Does something like embedded hal exist in the C/C++ world? ( https://github.com/rust-embedded/embedded-hal )
-
InfluxDB
InfluxDB high-performance time series database. Collect, organize, and act on massive volumes of high-resolution data to power real-time intelligent systems.
-
C++ now also has many more modern tools, such as Xmake
-
...and they've accepted (though not yet implemented) a proposal to allow them to opt into being sandboxed to only consuming and producing token streams so things like #[derive(Serialize, Deserialize)] can be sandboxed and badged as such on crates.io.