7 ms·
Because it's interesting. It is interesting because it advances the state of the art: it makes safe "systems programming" possible, which no production ready l
by noelwelsh 9y ago
Because it's interesting.
It is interesting because it advances the state of the art: it makes safe "systems programming" possible, which no production ready language previously provided.
It is interesting because it is accessible to many of the people who frequent HN. It's community is similar enough to the community of HN readers that many HN readers can use Rust and not feel out of place. The concepts it introduces are not such a departure from the concepts familiar to many programmers that a huge amount of learning is required. (Compare to, say, more research oriented languages like Idris).
- pdpi 9y ago> The concepts it introduces are not such a departure from the concepts familiar to many programmers that a huge amount of learning is required. More specifically, I would say that it lands in the Goldilocks range: It's not so alien as to make it inaccessible, while being alien enough that you'll learn something from it.
- dozzie 9y ago> it makes safe "systems programming" possible, which no production ready language previously provided. I think you have just made Ada and several other languages disappear from the history.
- noelwelsh 9y agoYeah, "production ready" was the wrong phrase. It's more a combination of availability of language compiler, tooling, training, and interest from developers. If you start a new project using Rust there is a reasonable chance you'll be able to find libraries for common tasks and developers willing to work on it. You can make a case for it and not lose your job. With Ada, outside of a few niches that isn't going to be the case IMO. It's been a long time since I looked at Ada, but I believe it's memory mgmt is more inline with modern C++ than Rust. So perhaps it's not truly comparable.
- kibwen 9y agoThe thing that Ada and its peers lack that Rust has already tackled is finding a strong foothold in OSS. Doubtless there are more lines of Ada than Rust in the wild, but in 30 years of use the only OSS Ada project I can name is GNAT itself, whereas anyone using e.g. Firefox or VSCode is using Rust despite it being ten times younger. Given that most new developers these days seem to learn to program via OSS, and given that HN is largely OSS-focused, it's no surprise that Rust gets mentioned more.
- pjmlp 9y agoWhile you are right, it would also be good to learn the history of computing in a proper way, instead of re-writing it based on urban myths and perceptions.
- dozzie 9y ago> The thing that Ada and its peers lack that Rust has already tackled is finding a strong foothold in OSS. Which is irrelevant to the claim that no previous language provided safe environment for systems programming.
- swsieber 9y agoYou're missing the qualifier of "production ready". While I'd argue that Ada was indeed "production ready" language wise, I'd say that it's not with respect to libraries, of which, OSS contributes a whole bunch. For some people, a good library selection is essential to being "production ready".
- dozzie 9y agoWe must think about quite different things behind "systems programming" if you need libraries for it. For me system implements and provides interface, not uses it. Like in operating system. And then, Ada had a selection of libraries for a long time. You just conveniently forget about the paid ones, so you can call Ada "not production ready".
- 9y ago
- monocasa 9y agoAda doesn't have the same memory management safety without a garbage collector that Rust does.
- dozzie 9y agoIndeed Ada has different memory management model, though equally safe.
- monocasa 9y agoI've coded in Ada. Storage pools are not as safe as Rust's affine type system. For one it's a lot easier to leak memory with Ada, since they're mainly built off of reference counting.
- moosingin3space 9y agoPedantic: memory leaks are memory-safe, despite generally being undesirable.
- monocasa 9y agoYou're totally right, but yeah, I tend to roll it in to the same category since I consider the denial of service associated with memory leaks to be as bad as stricter memory unsafety. (And to be very pedantic I said 'memory management safety', not just 'memory safety').
- deleted 9y ago[deleted]
- pcwalton 9y agoAda uses a garbage collector for the free store (or just uses unsafe code if it's disabled). Ada's memory management model is not really different from any other typical language.
- dozzie 9y ago