@steveklabnik’s response to rust being too hard:
I believe in people.
The Rust standard libs aren’t quite batteries included, but they come
with a pile of adaptor cables and an optional chemistry lab.
#rust just now.
<Makoryu> Binero: But does the overallocation happen in Vec, or in the allocator itself <Binero> It has to be in vec as the allocator doesn't return anything exposing if it overallocated. <Ketsuban> If the allocator doesn't tell you if it overallocated or not, how do you know it didn't overallocate? 8) <_habnabit> checkmate, athiests
(I swear I didn’t plan this ahead of time.)
FOR THE LOVE OF ALL THAT’S NOODLY, LET THE COMPLETIONS FLOW.
/u/herbadah in this weird thread about Racer
<ketralnis> Rust is also really phobic of heap allocations […] <Xion> Yes, Rust encourages everyone to be a full stack developer :)
Sorry, I think it was in the non-logged #rust-beginners channel.
I can confirm that the conversation did happen in #rust-beginners around 2016-06-28 00:23 UTC (I keep private logs).
On /r/programming :
Am I the only one that finds highly ironic the naming of something that’s supposed to be new and cutting-edge after a substance universally synonymous with old, dilapidated and broken down?
Rust is as close to the bare metal as you can get.
For a sufficiently large project, the odds of compiling
syntexmay eventually converge to 100%
<kmc> you have a problem. you decide to use Rust. now you have a Rc<RefCell<Box<Problem>>>
Writing secure code is not a meme, and you are not djb so no, you cannot do that in C.
Out of curiosity, what specifically did MIR need from the LLVM 3.9 release?
This bug was filed against MIR: https://github.com/rust-lang/rust/issues/34119 , which revealed an LLVM bug in the SimplifyCFG pass which was fixed in this commit: https://github.com/llvm-mirror/llvm/commit/47bc554474593652aa2d03b8ef047fbaea9b009a
. Upgrading our version of LLVM to contain that commit also required
updating basically every supporting dependency and led to interesting
ramifications for various platforms such as https://github.com/rust-lang/rust/pull/34841 , and also invalidated our patches to compiler-rt which ultimately ended with us saying “fuck it”: https://github.com/rust-lang/rust/pull/34873 and planning long-term to rewrite compiler-rt in Rust https://github.com/rust-lang/rust/issues/34400
. Then cue various shenanigans where rustllvm accidentally assumed that
a C++ enum had the ABI of a C enum which led to endless mysterious
segfaults (see its cousin at https://github.com/rust-lang/rust/issues/35131 ), and by the time that was resolved LLVM 3.9 was imminent so we figured hey might as well use that.
TL;DR: Integrating nine lines of code from February was such a hassle that we just accidentally coincided with LLVM 3.9.
matthieum: … and I wonder: could the
Boxbe removed if we were able to return traits directly? (for the curious, it’s this
seanmonstar: Or, cough
<c74d> I’ve gotten the impression that Rust avoids the term “class” altogether lest anyone think more OO-ly
<scott> unfortunately Rust still has a fairly oppressive cast system
if letconstruction is a neat thing Rust borrowed from Swift
(perhaps “copied” would be more accurate, or “cloned” depending on your
views on whether ideas have owners).
@Havvy it would be great if you could also add a permalink to your quote. It makes it easy to attribute.
It happened in #rust-offtopic - I’m not sure if we have a way to permalink to that?
I have logs for that channel. Tell me when it happened and I can confirm it