BatmanAoD

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

You are saying "yes" to a comment explaining why the Google AI response cannot possibly be correct, so what do you mean "and [it's] correct"?

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

This article somehow links to both the Reference and the Ferrocene spec, but still concludes that an official non-Ferrocene spec is necessary.

Why doesn't the Ferrocene spec accomplish what the author wants? He states:

In other words, without a clear and authoritative specification, Rust cannot be used to achieve EAL5.

What? Why can't the Ferrocene spec (and compiler) be used? Do Ferrocene and TÜV SÜD not count as "some group of experts"?

(Regarding the author's opening paragraphs, the Reference does make the same distinction about drop scopes for variables versus temporaries, though I can see why he finds the Ferrocene spec clearer. But that doesn't demonstrate that the Reference is useless as a stand-in for a specification.)

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

That's actually not how any language has ever been written, though it's easy to get that impression from how much the C and C++ communities emphasize their formal specifications.

But in fact, both languages were in production use for over a decade before they had a formal spec. And languages with formal specifications are actually a tiny minority of programming languages.

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

There is indeed a caveat in the introduction to the Reference that there may be statements in it that are specific to rustc. However, the authors strive to keep statements about the implementation separate from statements about the language.

The main reason there's not yet an "official" spec is that creating one takes enormous time and money, which are always limited resources. (Note that both C and C++ had no formal standard for over a decade after their initial release.) The Reference is "good enough" to make a formal spec not strictly necessary, and the existence of Ferrocene makes it even less necessary, since anyone who absolutely needs a spec can use Ferrocene.

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

You can say the Rust implementation is wrong if it doesn't conform to the Reference. That is not the same as "you personally disagree with the behavior."

Rust's guarantees about the behavior of safe code are far stronger than anything C or C++ provides, with or without a formal spec.

[–] BatmanAoD@programming.dev 4 points 1 week ago

Creation is easy, assuming the many-worlds interpretation of quantum mechanics!

[–] BatmanAoD@programming.dev 6 points 1 week ago

Delete prior iterations of the loop in the same timeline? I'm not sure there's anything in quantum mechanics to permit that...

[–] BatmanAoD@programming.dev 42 points 1 week ago (3 children)

In the universe where the list is sorted, it doesn't actually matter how long the destruction takes!

[–] BatmanAoD@programming.dev 146 points 1 week ago (21 children)

Reminds me of quantum-bogosort: randomize the list; check if it is sorted. If it is, you're done; otherwise, destroy this universe.

[–] BatmanAoD@programming.dev 4 points 1 week ago

Or Stockholm Syndrome

[–] BatmanAoD@programming.dev 6 points 4 weeks ago (1 children)

You're not wrong, but not everything needs to scale to 200+ servers (...arguably almost nothing does), and I've actually seen middle managers assume that a product needs that kind of scale when in fact the product was fundamentally not targeting a large enough market for that.

Similarly, not everything needs certifications, but of course if you do need them there's absolutely no getting around it.

[–] BatmanAoD@programming.dev 1 points 4 weeks ago

In case you're still interested in this type of resource, here's another one I just learned about: https://google.github.io/comprehensive-rust/

It's by the Android team at Google, and while it doesn't require knowledge of C++, it seems to be intended to bring devs up to speed on the concepts required for using Rust in Android and Chromium.

33
submitted 10 months ago* (last edited 10 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 ›