As a user of any higher level data structures there's no way for you to know what happens to values passed though. You're absolutely right that if you were using nothing but the stdlib you always know (mostly) that you are explicitly calling forget.
The problem is that you don't know that to be the case as the consumer of a library without a thorough audit of the library. Especially when dealing with ffis things get very muddy very fast.
As much as I'd love for this to happen, I'm uncertain if editions are robust enough for this to happen. I feel like, in 10 or so years, there needs to be a breaking edition addresses some of these concerns.
It's super hard to get everything right the first time and I think rust has done an excellent job of ensuring that we're moving forward incrementally but a leak trait makes things so much nicer in the long run.
Leaking might be safe, but not knowing that somewhere in the stack you're forgetting values is so hard to know when you want to build very long running programs
Redpen - Stricter linting
A Rust code linter. Contribute to estebank/redpen development by creating an account on GitHub.
Inline LVM Optimization Remarks and Analysis
TL;DR: This post describes LLVM optimization remarks that can useful to help the compiler better optimize your programs. If you want to analyze remarks generated from compiling Rust programs, you can use the cargo-remark tool.
2022 Rust Survey results
Empowering everyone to build reliable and efficient software.
A Failed Experiment With Static Dispatch
Initial versions of the EndBASIC Service, and therefore initial versions of EndTRACKER, used dynamic dispatch to support abstract definitions of system services such as the database they talk to and the clock they use. This looked like a bunch of Arc objects passed around and was done to support ext...
Cargo CVE - Not respecting umask when extracting crates
Empowering everyone to build reliable and efficient software.
Sniffnet - A rust network sniffer - One year later lessons learned
I’m excited to share with y’all that Sniffnet is one year old today! The last 365 days of my life have been almost totally dedicated to this project and I’ve learned a lot along the way. On August ...
Yes, as far as I'm aware this is only focusing on compile times.
Gathering Compiler Optimization Data - Update
Last week I requested help with some data analysis of the Rust compiler.
Neat work, I'll be sure to take a peek later.
Progress Report for Cranelift - July 2023
It has been quite a while since the last progress report. A ton of progress has been made since then, but I simply didn’t get around writing a new progress report. There have been 639 commits since the last progress report. This is significantly more than the last time given how long there has been ...
A JVM in Rust - Part 3
This post is part of the Writing a JVM in Rust series. I have written a JVM in Rust A JVM in Rust part 2 - The class files format A JVM in Rust part 3 - Parsing class files ⬅️ this post In this post, I will discuss how rjvm parses .class files. The code I will discuss today is contained in th...
Three months of work at the rust foundation
The Rust Foundation is an independent non-profit organization to steward the Rust programming language and ecosystem, with a unique focus on supporting the set of maintainers that govern and develop the project.