BatmanAoD

joined 1 year ago
[–] BatmanAoD@programming.dev 16 points 6 hours ago (1 children)

I was hoping this might start with some actual evidence that programmers are in fact getting worse. Nope, just a single sentence mentioning "growing concern", followed by paragraphs and paragraphs of pontification.

[–] BatmanAoD@programming.dev 2 points 1 day ago

Oh. Well, in that case, his resignation message was pretty matter-of-fact, not dramatic. He did link, in a note at the end of the email, to the now-infamous "the fact is, you're not going to force everyone to learn Rust" video, and the drama was more or less self-manufacturing from there. But to be honest, I think it's a good thing that more people are seeing that video than otherwise would have, and I can't really blame him for linking to it.

And isn't it somewhat concerning that bringing Rust to the kernel is still so controversial and highly "political", several years after initial approval by Linus and Greg KH?

[–] BatmanAoD@programming.dev 1 points 1 day ago

Ah, sorry, I misinterpreted your comment somehow. Yes, Rust is bootstrappable today, it's just a much longer process than it would be if there were a compiler written in C.

[–] BatmanAoD@programming.dev 7 points 2 days ago* (last edited 2 days ago) (3 children)

You cannot, today, build a Rust compiler directly from C, but you're right that people are working on it. See this recent post: https://notgull.net/announcing-dozer/

Edit: you can certainly bootstrap Rust from C via C++, as the article covers. I misinterpreted the comment above.

[–] BatmanAoD@programming.dev 12 points 2 days ago (2 children)

He spent four years as the project maintainer. That's hardly "flouncing off."

[–] BatmanAoD@programming.dev 23 points 3 days ago

It would be a valid point if he weren't literally speaking over the people trying to tell him that they're not demanding he learn Rust: https://youtu.be/WiPp9YEBV0Q?si=b3OB4Y9LU-ffJA4c&t=1548

[–] BatmanAoD@programming.dev 24 points 3 days ago (1 children)

Oh jeeze, you have no idea. You can watch it yourself: https://youtu.be/WiPp9YEBV0Q?si=b3OB4Y9LU-ffJA4c&t=1548

That timestamp is about where the audience member (a maintainer of ext4 and related utilities) starts speaking. The "here's the thing" quote is around 28:40.

[–] BatmanAoD@programming.dev 2 points 4 days ago

The goal is rather to not need to think as hard...

Or, if one prefers, having more flexibility to choose how and where to allocate mental energy, rather than letting the language force you to spend some amount on the "bookkeeping" necessary to avoid various footguns.

[–] BatmanAoD@programming.dev 2 points 6 days ago

Yeah, I mean, I tried to be explicit that I wasn't recommending unity builds. I'm just pointing out that OP, while misinformed and misguided in various ways, isn't actually wrong about header files being one source of slowness for C++.

[–] BatmanAoD@programming.dev 7 points 6 days ago

You don't need to do any of those things with Go or Rust. Interfaces/traits provide the capability for dynamic dispatch.

[–] BatmanAoD@programming.dev 3 points 6 days ago (2 children)

Slow compared to just chucking everything into a single source file, actually: https://github.com/j-jorge/unity-build

That's only true for clean builds and even then isn't universally true, and of course there are other reasons not to do unity builds. But the existence of the technique, and the fact that historically it has sped up build times enough for various projects to adopt it, does show that the C++ model, with headers and separate compilation units, has some inherent inefficiency.

[–] BatmanAoD@programming.dev 11 points 6 days ago

These are extremely superficial observations. You should learn more about each of these languages before dismissing them; Go is especially easy to learn.

(I quite dislike Go, actually, but "it has no classes" is nowhere near a valid reason not to learn a language.)

0
submitted 8 months ago* (last edited 8 months ago) by BatmanAoD@programming.dev to c/rust@programming.dev
 

Almost five years ago, Saoirse "boats" wrote "Notes on a smaller Rust", and a year after that, revisited the idea.

The basic idea is a language that is highly inspired by Rust but doesn't have the strict constraint of being a "systems" language in the vein of C and C++; in particular, it can have a nontrivial (or "thick") runtime and doesn't need to limit itself to "zero-cost" abstractions.

What languages are being designed that fit this description? I've seen a few scripting languages written in Rust on GitHub, but none of them have been very active. I also recently learned about Hylo, which does have some ideas that I think are promising, but it seems too syntactically alien to really be a "smaller Rust."

Edit to add: I think Graydon Hoare's post about language design choices he would have preferred for Rust also sheds some light on the kind of things a hypothetical "Rust-like but not Rust" language could do differently: https://graydon2.dreamwidth.org/307291.html

view more: next ›