News: 0000820604

  ARM Give a man a fire and he's warm for a day, but set fire to him and he's warm for the rest of his life (Terry Pratchett, Jingo)

Five years of Rust

([Development] May 15, 2020 12:48 UTC (Fri) (corbet))


It seems that the Rust programming language [1]has only been around for five years . " With all that's going on in the world you'd be forgiven for forgetting that as of today, it has been five years since we released 1.0 in 2015! Rust has changed a lot these past five years, so we wanted reflect back on all of our contributors' work since the stabilization of the language. "



[1] https://blog.rust-lang.org/2020/05/15/five-years-of-rust.html

Five years of Rust

Well, it took them five years to get to 1.0, so I guess ten years in all? :-)

I tried Rust for the first time a while back (I am mainly working in C++), and it's not bad at all. Solid ownership semantics, documentation written for programmers, a suitably rich standard library, supposedly a good FFI (I didn't try it myself, though). I do have some issues with how things get around error handling and Option vs. Result; it feels a bit unneededly complex. But overall a pretty positive experience.

But it's a pity that it, like almost all newer languages, really wants to own your package manager; they even go as far as making cargo a build system. (Yes, it's optional, but they recommend it even for the toy project in the Rust book, so it's pretty clear where they want you to go.) This is only fine if all your code is in a single language! The Go people solve that saying “oh, just rewrite everything in Go”, but I had higher hopes for Rust.

Five years of Rust

Well, it took them five years to get to 1.0, so I guess ten years in all? :-)

I tried Rust for the first time a while back (I am mainly working in C++), and it's not bad at all. Solid ownership semantics, documentation written for programmers, a suitably rich standard library, supposedly a good FFI (I didn't try it myself, though). I do have some issues with how things get around error handling and Option vs. Result; it feels a bit unneededly complex. But overall a pretty positive experience.

But it's a pity that it, like almost all newer languages, really wants to own your package manager; they even go as far as making cargo a build system. (Yes, it's optional, but they recommend it even for the toy project in the Rust book, so it's pretty clear where they want you to go.) This is only fine if all your code is in a single language! The Go people solve that saying “oh, just rewrite everything in Go”, but I had higher hopes for Rust.

Five years of Rust

Even earlier, Graydon Hoare started to work on Rust in 2006 :-)

Five years of Rust

Even earlier, Graydon Hoare started to work on Rust in 2006 :-)

Five years of Rust

There is cgo which makes binding C code to go and C to to go quite trivial as long as you only share data allocated on the ”C side” and don’t store references to go memory in C. Unfortunately it doesn’t play very well with valgrind as even hello world programs produce lots of warnings. Maybe there is a good supressions-config for go? If there is know please let me know!

The annual meeting of the "You Have To Listen To Experience" Club is now in
session. Our Achievement Awards this year are in the fields of publishing,
advertising and industry. For best consistent contribution in the field of
publishing our award goes to editor, R.L.K., [...] for his unrivaled alle-
giance without variation to the statement: "Personally I'd love to do it,
we'd ALL love to do it. But we're not going to do it. It's not the kind of
book our house knows how to handle." Our superior performance award in the
field of advertising goes to media executive, E.L.M., [...] for the continu-
ally creative use of the old favorite: "I think what you've got here could be
very exciting. Why not give it one more try based on the approach I've out-
lined and see if you can come up with something fresh." Our final award for
courageous holding action in the field of industry goes to supervisor, R.S.,
[...] for her unyielding grip on "I don't care if they fire me, I've been
arguing for a new approach for YEARS but are we SURE that this is the right
time--" I would like to conclude this meeting with a verse written specially
for our prospectus by our founding president fifty years ago -- and now, as
then, fully expressive of the emotion most close to all our hearts --
Treat freshness as a youthful quirk,
And dare not stray to ideas new,
For if t'were tried they might e'en work
And for a living what woulds't we do?