TWiR quote of the week

From deep in the bowels of Centril brings this nugget of wisdom:

I think the notion that you can add dependent types without changing / expanding the mental model is mistaken personally.

From @eugene2k:

Freedom to shoot yourself in the foot is not a rust marketing point :wink:

Source: Why can't I increment a variable like this? - #14 by eugene2k


If only rustc could check my comments as thoroughly as it checks my code



From @mbrubeck on IRC on why there are no nightlies for the last 4-5 days:

bors lives at the north pole, so near the summer solstice it's never night, hence no nightlies


@skymuse From skymuse in this Rust users forum:


actix-web has removed all unsound use of unsafe in its codebase. It's down to less than 15 occurences of unsafe from 100+.

Title of the /r/rust thread celebrating this commendable achievement.

(Thanks /u/_ar7 , I agree that after the shitstorm actix-web received, we should also spread the love)


What we’ve seen is a huge shift in our capacity to make point releases, rather than a shift in the necessity of making point releases. This doesn’t seem to me like a cause for concern.

@withoutboats on internals

A good nugget on the reason for the (percieved) increase in point releases recently.


References are not pointers, but temporary locks on data.

(Kornel in Cannot move out of borrowed content take 2 - #6 by paziv )


matklad in the internals forum


Felix91gr summarizes the (lack of) difference between C++ and Rust


I love the language. And I actually feel like I’m more productive in it than in other languages.

It seems to be a good week for Rust-is-great one-liners :slight_smile:

@worik sharing his experience of learning rust :heart:
(The entire post is a gem, really capturing the rite-of-passage of fighting with, then learning to love, the borrow-checker)


We put in a lot of work to make upgrades painless; for example, we run a tool (called “crater”) before each Rust release that downloads every package on and attempts to build their code and run their tests.

-- What is Rust 2018?

Kinda amused me -- imagine any language trying to compile every package in its ecosystem. Brb downloading the internet.


We tend to be conservative with these kinds of things at first. We could and may change this in the future, but once you do it, you can't go back. It's better to be conservative, feel where the pain leads you, and improve, then to speculate on things and end up adding bad stuff. -- Steve Klabnik, on adding a feature to Rust

1 Like

I like quininer's 'quote' :

cargo build --features post-quantum


@cuviper sums up Rust's value-add for parallel programming in Parallel problems to showcase Rust features - #6 by cuviper


Josh Triplett on #design (Discord) finding the optimal solution for one of my coming RFCs:

eddyb: cc @centril we found your syntax
JoshTriplett: IMO use replaces path while keeping the meaning, but changing from a noun to a verb, allowing the introduction of "can" which conveys allowance
JoshTriplett: Ah, I see. So, #[cfg(can_has(cheese::burger))] then? :smiley:

1 Like

Turns out that shared ownership is hard when you actually have to, you know, care about it and not just wave your hands and go, "THIS IS PROBABLY FINE" as I do in...erm...other languages. :slight_smile:

(zachlute on IRC, #rust-beginners)


@kornel on the new categorization logic :heart: :cat: :dog: :heart:


A poem, courtesy of @varkor:

Bastion of the Turbofish

Beware travellers, lest you venture into waters callous and unforgiving,
where hope must abandoned, ere it is cruelly torn from you. For here stands
the bastion of the Turbofish: an impenetrable fortress holding unshaking
against those who would dare suggest the supererogation of the Turbofish.

Once I was young and foolish and had the impudence to imagine that I could
shake free from the coils by which that creature had us tightly bound. I
dared to suggest that there was a better way: a brighter future, in which
Rustaceans both new and old could be rid of that vile beast. But alas! In
my foolhardiness my ignorance was unveiled and my dreams were dashed
unforgivingly against the rock of syntactic ambiguity.

This humble program, small and insignificant though it might seem,
demonstrates that to which we had previously cast a blind eye: an ambiguity
in permitting generic arguments to be provided without the consent of the
Great Turbofish. Should you be so naïve as to try to revolt against its
mighty clutches, here shall its wrath be indomitably displayed. This
program must pass for all eternity, fundamentally at odds with an impetuous
rebellion against the Turbofish.

My heart aches in sorrow, for I know I am defeated. Let this be a warning
to all those who come after. Here stands the bastion of the Turbofish.