TWiR quote of the week


how do cats arbitrate access to a shared typesetting system?

with a mew-TeX


“This is not only about the programmer getting surprised; it’s also about the compiler getting surprised and letting your code crash” – nmatsakis, teaching a Rust class


You have to think about it. You don’t have to worry about it.


A nice propaganda that can be used to describe what manual memory management feels like in Rust. Source


Servo wants to be secure.
The only secure system is the one that can never run.
Gankro on /r/rust


[Using unsafe is] less “nuclear option” and more “diplomacy has failed”.
Aatch on /r/rust


steveklabnik1 on r/rust

If Rust 2.0 ever happens, I personally will advocate very strongly that we do a final release of the 1.x series that has all of the 2.0 features, but issues deprecations for the things that will be removed. In this way, if you’re on 1.last, and you have no warnings, 2.0 is a seamless upgrade.
I don’t want a Ruby 1.9/Python 3/Perl 6 situation.


In a nutshell, if Dropbox loses any of your data in the future, you can safely assume Mozilla is to blame. :stuck_out_tongue:

Redditor /u/jamwt commenting on the first Rust code in production at Dropbox.


But the foundation of a highly optimizing compiler, that knew about and took advantage of safety, was essential to our results.

I would also be remiss if I didn’t point out that the world has made considerable inroads in this area alongside us. Go has straddled an elegant line between systems performance and safety. Rust is just plain awesome.

Joe Duffy - Safe native code


Approximately 96% of published crate revisions that build with the 1.0 compiler build with the 1.5 compiler. I think this is a great success.

brson on the Rust regression year end report


From Costya Perepelitsa answer to “How do Go and Rust languages compare?” on quora:

“Go is easier to learn, for much the same reason that a solitary confinement cell is easy to navigate.”


Rustaceans are not very imaginative at naming things.

We try! and try!, but sometimes, we Err.

— steveklabnik1 on r/rust


2016 is the year of the implementation detail. All else must fall at the hands of the dark lord MIR.


Rust lets you trade - thinking very carefully about concurrency and memory leaks (hard) for - learning Rust (still hard)

Julia Evans (slide 5)


Found on Hacker News

Rust is great, but I think C is much easier

  • rhodysurf


You mean it’s easier to write an incorrect program in C than a correct one in Rust? Of course!
If you mean it’s easier to write correct programs in C than correct programs in Rust, I’m afraid you’re badly mistaken.

  • catnaroek


Borrow/lifetime errors are usually Rust compiler bugs.
Typically, I will spend 20 minutes detailing the precise conditions of
the bug, using language that understates my immense knowledge, while
demonstrating sympathetic understanding of the pressures placed on a
Rust compiler developer, who is also probably studying for several exams
at the moment. The developer reading my bug report may not understand
this stuff as well as I do, so I will carefully trace the lifetimes of
each variable, where memory is allocated on the stack vs the heap, which
struct or function owns a value at any point in time, where borrows
begin and where they… oh yeah, actually that variable really doesn’t
live long enough.

Post in reddit




@withoutboats on internals:


Memory errors are fundamentally state errors, and Rust’s move semantics, borrowing, and aliasing XOR mutating help enormously for me to reason about how my program changes state as it executes, to avoid accidental shared state and side effects at a distance. Rust more than any other language I know enables me to do compiler driven design. And internalizing its rules has helped me design better systems, even in other languages.

desiringmachines on /r/rust


() is a value of the type () and its purpose is to be useless.
( . Old, but I’ve found it now)


It’s also no longer really correct. Rust no longer has a separate unit type. () is just an empty tuple.