The Rust team is happy to announce a new version of Rust, 1.24.0. Rust is a systems programming language focused on safety, speed, and concurrency. This release contains two very exciting new features: rustfmt and incremental compilation! For years now, we’ve wanted a tool that automatically can reformat your Rust code to some sort of “standard style.” With this release, we’re happy to announce that a preview of rustfmt can be used with 1.24 stable.
Back in September of 2016 (!!!), we blogged about Incremental Compilation. While that post goes into the details, the idea is basically this: when you’re working on a project, you often compile it, then change something small, then compile again. Historically, the compiler has compiled your entire project, no matter how little you’ve changed the code. The idea with incremental compilation is that you only need to compile the code you’ve actually changed, which means that that second build is faster.
As of Rust 1.24, this is now turned on by default. This means that your builds should get faster! Don’t forget about cargo check when trying to get the lowest possible build times.
This is still not the end story for compiler performance generally, nor incremental compilation specifically. We have a lot more work planned in the future. For example, another change related to performance hit stable this release: codegen-units is now set to 16 by default. One small note about this change: it makes builds faster, but makes the final binary a bit slower. For maximum speed, setting codegen-units to 1 in your Cargo.toml is needed to eke out every last drop of performance.
how come hes smart enough to make rust but stupid enough to believe in antifa?
Asher Richardson
Steve Klabnik mostly writes documentation.
Grayson Smith
and btw he fucking sucks at it. The first edition of the book is meh at best and the second edition is still not even close to being finished.
Joshua Brown
Thank fuck Steve is alive. I was getting worried that you might have been beheaded by Ahmed.
The actual Steve Klabniks job is to write the Rust book(which isn't done and has been dragging along for multiple years), posting on social media and rewriting the documentation thing in meme.js.
Elijah Hughes
So what does this mean for Redox?
Grayson Mitchell
lol if this doesn't tell you everything you need to know about Rust.
Oliver Rodriguez
so is it really safe now? or there is still some UB in "safe" subset?
Rust is and always was safe. It is rustc, the compiler, which has bugs that allow memory unsafety. But they will be fixed soon. The reason why those bugs existed so long is that the Rust developers decided to rewrite parts of the compiler. These rewrites will bring yuge improvements. You can test some of it in nightly Rust btw.
James Jones
Unix
Ryder Long
Nigger
Nolan Morgan
I'm unironically curious and want to learn rust in my free time. What's the best place to start ?
lol do please tell me about your non-unix unix-like OS and your webdev systems language.
Samuel Cook
it isn't nodev detected
stop shitting up my thread, anti Rust shill
Justin Butler
You can't shit up an already-shit thread, though.
Xavier Parker
kill you're are self
Leo Perez
...
Benjamin Mitchell
you should stop talking about irrelevant shit in a Rust thread
Noah Richardson
It's like we have an alternative to rustc in this Universe right now, or can interpret Rust code in our brains at comparable speeds. Nice evasion.
Caleb Roberts
I think what you're ultimately referring to is that despite being unix-like, they don't conform to POSIX if they feel that their way of doing things is better.
From a page on their shell: So they keep dash around for compatibility's sake, but their main shell deviates from POSIX for the sake of innovation.
As far as the actual OS goes, one of their ideas is "Everything is a URL":
Michael Adams
it is not something new. even Android has something similar, and it took it from plan9 or something I dont remember.
This, please don't present this rat-man as the face of the language when all he is is a verbal parasite.
Ryan Allen
But I AM the face of Rust. Everyone knows. Someone mentions Rust? I'm there instantly. I have multiple web crawlers that scavenge the interwebs for mentions of Rust/my name (written in Rust btw). I will be the Jon Skeet of the Rust world and you can't do anything about it.
Steve is willing (for other people) to fight to preserve his supply of third world dick
William Wood
uh i'll just keep using c thanks
Adam Gonzalez
Off-by-one error redirects insult back at you C queer.
These commie leftists (using computes and other devices of capitalism) are such cocksucking faggots. Hopefully Steve gets some documentation work done before being beat to death by the niggers he attempts to rile up.
C is for cuck nigger.
Elijah Fisher
what the fuck guys? 99% of these posts are >>>Holla Forums tier bullshit can we actually talk about the tech instead of shitposting?
Luke Sanders
If you've been here for more than a week, you know that that we're inundated with pointless Rust threads to an extent where there isn't much to say anymore. It's partly their own fault, for allowing the technicals of their language to be lost amidst the worthless SJW talking points espoused by a vocal section of their community.
Jayden Butler
thats just about every community in the normie world tho, i mean my opinion of it is meh, but it would be nice to see that shit ignored and have some decent tech talk on this tech board...
Ryder Evans
That would be the dream. Politics is not technology.
As a successful candidate, you will lead a team of engineers working on Mononoke, identify new use cases that Mononoke unlocks, and be instrumental in open-sourcing Mononoke and helping others across the industry to adopt it. Mononoke is written in Rust, so experience in Rust is desirable. A love of data structures and algorithms is a must. We are looking for someone who loves solving hard problems at scale.
There is no difference between unsafe Zig and Zig. There exists no safe Zig. This clickbait blog post is just the creator of Zig desperately trying to get Zig onto Hackernews/Reddit. Thanks for bumping my thread btw
Daniel Cooper
Because there is no need to create a "safe" subset for a language that is already reasonably safe if the author is not acting maliciously. (and if we count malice, then no language could prevent intentionally malicious code) Similarly as there's no "safe" Python or Java because no one needs that. Unsafe Rust, on the other hand, is a footgun, as it was just demonstrated.
So? This allows you to call shared libraries from Python. That doesn't make Python unsafe. ok kid So still unsafe? Thanks for clarifying. LOL. Are you trying to imply that Zig isn't a stillborn language?
Isaac James
are you trying to imply that a language is only alive if someone is making a shitload of vulnerabilities in it?
Jonathan Lewis
No. I'm trying to imply that nobody except for the creator of Zig is using Zig.
Aiden Rodriguez
And the proofs are …?
Bentley Turner
ziglang.org/ Hmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmm... Really makes my thought noggins jogging...
Colton Ramirez
I want the dylan language to live. ;_;
Lincoln Gomez
define class () slot point-x :: , required-init-keyword: x:; slot point-y :: , required-init-keyword: y:;end class ; disgusting
the rust standard library has lots of unsafe blocks. unsafe is idiomatic.
Parker Reed
One word that often falls when discussing the Rust community is “nice”. And yes, this is the result of active effort of a number of official and inofficial participants. Today I’m going to compare the Rust community with traffic.
There have been studies that show you need to direcly control only about 5% of cars to eliminate traffic jams (sorry, I’m not going to google the paper, trying to make a point here), and I believe the same applies to assholery in programming communities: If just 5% agree on being nice, they may sway the behavior of the community as a whole.
That is not to say everyone welcomes this kind of control. Imagine being in an almost-jam, trying to weasle through traffic, cutting off people left and right, only to find that a few cars before you, some cars coast, forming a slow-ish barrier you (and perhaps the cars before you) cannot pass. They’re slowing you down! You’d honk in righteous anger! What you don’t (and probably don’t want to) know is that those cars slow down to avoid a traffic jam, by keeping you from creating it.
(As an aside, I find that driving in traffic tends to bring out the worst in us. I’m unsure why that is, but I hear that people behave less well if they feel being in their private space, and most people count their cars in that category)
In a community the coasters being nice have a similar effect on those trying to weasel their way through, shaming and trolling left and right. People being nice offend those who don’t want to be nice themselves, and those people honk “SJW Police! Witch hunt!” in self-righteous fury. Lacking empathy, they think others are only nice to appear better than them, to make them look bad. Why else would someone waste the time and energy? Worse, with the backdrop of all this friendlyness, their weasling attempts suddenly starkly contrast. So they start to resent the “SJWs” on their high horses with their holier-than-you ‘tude.
By defending their “freedom” to bring everyone else to a halt, they’re telling you that them being at their destination five seconds earlier is more valuable than everyone around them not being stuck in traffic for another half an hour. I sincerely doubt the idea that those metaphoric five seconds benefit the community as a whole more than the multitude of half-hours wasted by being stuck.
This is not to say that everyone who blurts “Freedom of Speech” is an asshole. Some were just raised to believe that freedom is the biggest ideal and will reflexively fight everything that appears to curtail it. I personally believe this is misguided. Freedom of Speech is not Guarantee of Audience. I have yet to see any of those people speaking up when someone loud and obnoxious is thrown out of a restaurant – yet by extension of the same logic this should also count as a free speech violation, right?
Anyway, enough of the rambling. The key takeaway is that the argument that a Code of Conduct keeps people from getting things done is completely bogus. On the contrary, it keeps people from keeping other people from getting things done. I’ll leave you here with a verse:
Let’s play a game & surprise folks’round you by being nice Who gets most smiles this way wins this game & the day Now go & apply this advice
Jackson Cox
you're right about traffic but the analogy is shit and does not apply here.
Zachary Gray
Perhaps you can explain then: Why all the drama happens in projects which have a CoC, while other projects just werk without drama? If your post was true, it should be the other way round? Or do we live in a wrong universe?
Andrew Wood
Can you prove that statement though? I can certainly disprove it for you: Libav
Dylan Ortiz
CoC doesn't stop anyone from forking and deciding to isolate if the license allows to do so. libav is just a fork, and all the "drama" is because a few people did not agree on some things. (This happens sometimes and it's just how is life.) Not because someone started bitching about diversity and white privilege. The latter always goes with CoC. I have far more examples of that, but I think you already know about them.
Jayden Gutierrez
I don't understand what you are tring yo say. First you said that only projects with a CoC have drama and now you try to define drama as bitching about diversity and white privilege? Also libav wasn't just a fork. Debian replaced ffmpeg with libav and called ffmpeg deprecated.
John Rivera
only because a "smart" kid from libav happened to be also an admin in Debian&Ubuntu. it was reverted later, fortunately.
if we talk about CoC, it is reasonable to talk about the kind of drama which CoC aims to solve?
Asher Price
So? It still is drama. No. We are not talking about CoCs. We are talking about your claim that drama only happens in projects which have a Coc. Which I have disproven and you can't accept because >muh CoC.
Evan Martin
...
Gabriel Ross
okay, maybe not only, but most of the relatively recent drama in FOSS projects happens in projects with CoC. remember Mozilla, Drupal, github.com/opal/opal/issues/941 (this thread speaks for it all actually) what else, I forgot, a quick search will bring up another couple.
Leo Sanchez
#winning
Blake Wilson
me in the background
Carson Bailey
Really makes you think. Perhaps you are the dumb one and everyone should actually believe in antifa because they're right.
Dylan White
New blog post boys: Rust's 2018 roadmap
Rust: 2018 edition This year, we will deliver Rust 2018, marking the first major new edition of Rust since 1.0 (aka Rust 2015). We will continue to publish releases every six weeks as usual. But we will designate a release in the latter third of the year (Rust 1.29 - 1.31) as Rust 2018. This new “edition” of Rust will be the culmination of feature stabilization throughout the year, and will ship with polished documentation, tooling, and libraries that tie in to those features. The idea of editions is to signify major steps in Rust’s evolution, where a collection of new features or idioms, taken as a whole, changes the experience of using Rust. They’re a chance, every few years, to take stock of the work we’ve delivered in six-week increments. To tell a bigger story about where Rust is going. And to ship the whole stack as a polished product. We expect that each edition will have a core theme or focus. Thinking of 1.0 as “Rust 2015”, we have: * Rust 2015: stability * Rust 2018: productivity
What will be in Rust 2018? The roadmap doesn’t say for certain what will ship in Rust 2018, but we have a pretty good idea, and we’ll cover the major suspects below. Documentation improvements Part of the goal with the Rust 2018 release is to provide high quality documentation for the full set of new and improved features and the idioms they give rise to. The Rust Programming Language book has been completely re-written over the last 18 months, and will be updated throughout the year as features reach the stable compiler. Rust By Example will likewise undergo a revamp this year. And there are numerous third party books, like Programming Rust, reaching print as well. Language improvements The most prominent language work in the pipeline stems from 2017’s ergonomics initiative. Almost all of the accepted RFCs from the initiative are available on nightly today, and will be polished and stabilized over the next several months. Among these productivity improvements are a few “headliners” that will form the backbone of the release: * Ownership system improvements, including making borrowing more flexible via “non-lexical lifetimes”, improved pattern matching integration, and more. * Trait system improvements, including the long-awaited impl Trait syntax for dealing with types abstractly. * Module system improvements, focused on increasing clarity and reducing complexity. * Generators/async/await: work is rapidly progressing on first-class async programming support.
In addition, we anticipate a few more major features to stabilize prior to the Rust 2018 release, including SIMD, custom allocators, and macros 2.0.
Can you tell me when C/C++ got standardized? Kill yourself anti Rust shill
Evan Nelson
Are you retarded? What are C89, C99 and C11?
Liam Flores
Are you retarded? Now please calculate how long after C's development it got standardized. Then look up how old Rust is. Then kill yourself, anti Rust shill. Also please tell me why having a standard is important?
Grayson Parker
C was made only for themselves at the beginning. Rust wasn't. Learning or even making a 3rd party compiler for an always moving target is a pain. Especially since the stdlib itself isn't standardized I hope they'll cut that nodejs style of "everything must be an out of tree module".
Are you trying to imply that Steve Klabnik is trying to imply that the Rust developers invented incremental compilation? Because from what I understand Steve only wrote that in September 2016 he wrote a blog post about incremental compilation. Can you please quote the specific part where you believe Steve claimed that the Rust developers invented incremental compilation?
Lincoln Miller
I hate these versioning schemes that do nothing but indicate that some time has passed, you could get that information anyway. Version numbers have no meaning anymore.
Daniel Walker
They tell the compiler which words it should consider as keywords. Just because you are an autist and don't like this particular versioning scheme doesn't mean that it's shit. Also use actual arguments next time.
Colton King
They never said they invented it. They only implemented it in the compiler. Since when are you only allowed to implement technologies you personally invented?
Dominic Anderson
This man just oozes charisma. And he's smart too just check out some of stevers blog posts Almond activating stuff.
I for one will definitely use Rust to fight against capitalism and fascism. Safety First Comrades!!!
Sebastian Thomas
I'm not implying it. I'm saying it outright. You should learn how to read. Rhetoric is real and that's why you elect stupid politicians and buy shitty products.
Sustained disruption of community events, including talks and presentations.
Forbidden hugs when ?
Landon Roberts
WAT? What is appropriate then? Reads like catch-all bullshit.
Carter Martinez
You're a retard. Steve is referring to rustc with "the compiler". Historically, rustc has compiled the entire project. Kill yourself.
Hunter Price
Let's discuss within which timeframe using the word "historically" would be appropriate.
If you choose to idolize him, then that's your problem not mine. I'll make fun of the selfimportant manipulative shitbag whenever I fucking please.
Eli Miller
...
Ryan Edwards
Start with yourself.
Carson Taylor
You know historically retardation was the inabillity to comprehend rhetoric speech, but is now a term that is used against people who can analyze and understand rhetoric speech.
Historically when someone explained their new feature as if no one knew what it was, even though everyone had known for decades, they were considered retards.
You know historically I would have ignored you, but apparently now I don't.
Your request rings hollow when you couldn't take a simple joke about the rhetoric in the blogpost, don't you think Mr. Snowflake? Sorry to break the news to you, but you are the one who can't make fun of yourself.
Stop shitting up my Rust thread with your autism. I don't even understand what your problem is. Are you triggered because Steve used the word "historically" and you think it is wrong? Or is it because you misunderstood that Steve was only talking about rustc and not all compilers?
Kevin Thomas
Nope, the two of us is shitting up your Rust thread because you shat on a joke. First rule of the game is never to shit on a joke.
We could have been sitting here talking about what's nice about Rust and how Klabnik is probably a nice guy, but you choose to shit on a joke, because you're a delicate rust-colored flower.
You're clinging to a straw there man. You know what, maybe I'm wrong, maybe Steve is not an arrogant shitbag. He just knows how dumb his crowd is and that's why he's talking down to you and using words like "Historically" to trick your mind to worship the devine creation that is Rust. Even making you angry when someone makes a joke about the devine creation.
Auch.. keep trying to fit in, it'll probably make you a real boy some day pinocchio.
It seems like Steve Klabnik wants people to murder him or something.
Joseph Smith
what YOUR point? are YOU a brainlet?
Dylan Rogers
when your brain rusts this is the language
Jaxson Clark
lol
Joseph Lopez
Announcing Rust 1.25 The Rust team is happy to announce a new version of Rust, 1.25.0. Rust is a systems programming language focused on safety, speed, and concurrency. The last few releases have been relatively minor, but Rust 1.25 contains a bunch of stuff! The first one is straightforward: we’ve upgraded to LLVM 6 from LLVM 4. This has a number of effects, a major one being a step closer to AVR support.
A new way to write use statements has landed: nested import groups. If you’ve ever written a set of imports like this: // on one lineuse std::{fs::File, io::Read, path::{Path, PathBuf}};// with some more breathing roomuse std::{ fs::File, io::Read, path::{ Path, PathBuf }}; There are two big documentation changes in this release: first, Rust By Example is now included on doc.rust-lang.org! We’ll be redirecting the old domain there shortly. We hope this will bring more attention to a great resource, and you’ll get a local copy with your local documentation. Second, back in Rust 1.23, we talked about the change from Hoedown to pulldown-cmark. In Rust 1.25, pulldown-cmark is now the default. We have finally removed the last bit of C from rustdoc, and now properly follow the CommonMark spec. Finally, in RFC 1358, #[repr(align(x))] was accepted. In Rust 1.25, it is now stable! This attribute lets you set the alignment of your structs: struct Number(i32);assert_eq!(std::mem::align_of::(), 4);assert_eq!(std::mem::size_of::(), 4);#[repr(align(16))]struct Align16(i32);assert_eq!(std::mem::align_of::(), 16);assert_eq!(std::mem::size_of::(), 16); The biggest story in libraries this release is std::ptr::NonNull. This type is similar to *mut T, but is non-null and covariant. This blog post isn’t the right place to explain variance, but in a nutshell, NonNull, well, guarantees that it won’t be null, which means that Option has the same size as *mut T. If you’re building a data structure with unsafe code, NonNull is often the right type for you! libcore has gained a time module, containing the Duration type previously only available in libstd. Additionally, the from_secs, and from_milis functions associated with Duration were made const fns, allowing them to be used to create a Duration as a constant expression.