Alternative title: mediocre C++ is arguably worse than mediocre rust.
I’d agree with that? I think the power and danger of C++ is that it assumes the programmer knows best. Rust assumes the programmer is wrong if it looks dangerous. So.. yes?
Think of it like this: When Rust passes control to C it's like you jumping into a pit full of vipers in the hope that none of them bytes you. I might put up a sign "unsafe, vipers in pit".
We need all that knowledge of what the problem space looks like to evaluate if a simple API is good enough, but we do not necessarily need all that knowledge reflected directly in the API surface.
Ralf Jung on the Safer Transmute RFC
To me this feels like a core insight on effective API design: map out the problem space, survey existing approaches, create a minimal solution. Then iterate from there.
At least let's please keep one single language that doesn't allow the perpetually-reinforced sloppiness.
I was writing some code today and had to pass a closure with an arg I didn't need:
I thought "That looks kind of like a TIE fighter, we should adopt the habit of calling them that." But then I realized, no, a TIE fighter would be
Instead, I think it more closely resembles an Imperial shuttle as it is landing. And do you know what class those shuttles are?
George Lucas was truly a visionary... on /r/rust
Like other languages @rustlang does have footguns. The difference is that we keep ours locked up in the unsafe.
Ted Mielczarek on Twitter.
There are no bad programmers, only insufficiently advanced compilers
Esteban Kuber on Twitter
I see a very sharp knife; but this knife is completely and utterly shrouded and encased in tamper-proof, child-proof, thief-proof hardened and sealed plastic shells. Yes shells as in the plural of shell. These shells are even adult-proof too, where the adult is a generic engineer trained generally in other languages only.
Levi Lovelock in hist blog : https://levpaul.com/posts/rust-lesson-3-and-4/
I personally feel that ownership semantics is a handrail on the design space that will guide you to a clear and simple design. If you come from an OOP background, this will feel limiting, but it's not a bug, it's a feature.
In a way [Arc and RefCell] are allowing you to escape the single ownership principle, so I don't feel calling them escape hatches is a problem.
Raw pointers on the other hand... they aren't anything like hatches at all. More like the three ghosts of memory unsafety past, present and future, willing to haunt you and your users if you give in...
(Sorry for putting up two in rapid succession, but llogiq is being particularly poetic today.)
If other compilers are insufficiently advanced, rustc must be called insufferably advanced.
Macros are not compiler magic. They are compiler science.
When I'm programming, I prefer to do my own swearing. I don't want the compiler telling me "Did you mean $#&@foo instead? (line 56)."
Hi, I read TWiR 364's QotW, follow the link and see a response (to the quote) that said:
Yeah I keep editing and building until it builds successfully. After that, whatever’s wrong is the compiler’s fault.
I think the quote in TWiR 364 is not (very) good.
I'm not sure what you intend to accomplish by saying that here.
People put up proposed quotes here and others like them to vote for them on their own merits. What do replies that weren't proposed for inclusion into TWiR have to do with the suitability of the snippet that was proposed?
i just spent 8h finding a mutability bug and now i wanna be a catgirl
The code people write is first a question to the compiler, and later a story for people changing that code.
– Esteban Kuber (answering to a discussion of his previous Quote of the Week) on r/rust
I know rustc is famous for its nice error messages, but i was still surprised when i found this in a github issue discussion regarding a performance regression:
I know noting about the compiler internals but it looks to me as if 90% of the time is spent pretty-printing LayoutError.
Let’s be clear: We understand that we are net beneficiaries of the exceptional work that others have done to make Rust thrive. AWS didn’t start Rust or make it the success that it is today, but we’d like to contribute to its future success.
I've been watching Rust closely, doing some casual learning and lurking. I've been nothing but impressed, with very few exceptions, and where I've had doubts those have been addressed in a thorough and encouraging way. To call me a cynic is to call water wet and bulls mean, so take that for what it's worth.
The community is very notable though. The community has been knowledgeable, understanding, gentle, kind, and thoughtful in their approach. The human things are done in a very human and inviting way, exceptionally so.
This tips the scales for me as far as intellectual investment goes...I now know what language I'm going to be getting to know very well for probably decades to come.