5 ms·
Having a minimal runtime is, I believe, a requirement to make any serious headway into a lot C/C++ use cases. The places where minimal runtime is not important
by jeffdavis 6y ago
Having a minimal runtime is, I believe, a requirement to make any serious headway into a lot C/C++ use cases. The places where minimal runtime is not important have already seen big shifts to garbage-collected languages ~20 years ago.
You mentioned Ada, which does have a minimal runtime. It might be interesting if the community and ecosystem made a strong push into general-purpose programming, like rust has. I would give it another try.
Rust seems to handle heap allocations more fluidly (or at least closer to what I expect), but perhaps that wouldn't be a deal-breaker if I knew more about progamming in Ada. Rust also has better C integration -- it can match C structure layouts and operate on them seamlessly with rust semantics. But basically, it seems plausible that Ada could work with the right ecosystem around it.
Regardless, Ada has had decades to make the leap into general-purpose programming, and it hasn't done so yet. Rust is viable today for a lot of important use cases, and is not far off for a lot of others.
- Rochus 6y agoI think the fact that Rust is very popular in the polls, but still hardly ever used, rather indicates that people primarily want to escape from their current dissatisfaction, but then ultimately don't take it seriously with switching to another technology, so as with Ada or others already available. Besides, C++ is also evolving, and formal verification has been possible for many years. There are also proven ways to avoid memory problems. Rust would have to prove itself first. Maybe it solves one problem better, but ten others worse.
- feanaro 6y ago"Hardly ever used" sounds like it might be the result of your personal filter bubble?
- Rochus 6y agosee https://insights.stackoverflow.com/survey/2019 https://insights.stackoverflow.com/survey/2019 Only a small fraction of "Rust fans" are actually using it.
- albntomat0 6y agoI wonder what percentage of folks (not exclusive to Rust lovers) are stuck with a language at work or in major side projects because of momentum, existing code bases/etc.
- chc 6y agoI don't think it's just a filter bubble. Look at any programming jobs site. Count how many listings you see for Rust versus any language you'd consider commonly used.
- feanaro 6y agoWe were not specifically talking about present availability of jobs. I am personally aware of many projects being done in Rust and from my experience, it seems to be growing still.
- zucker42 6y ago> I think the fact that Rust is very popular in the polls, but still hardly ever used In what sort of polls is Rust's popularity overrepresented (when compared to industry usage)? A lot of people on Internet forums like Rust, but a lot of people on Internet forums like a lot of languages, especially new ones. And what is your definition of "hardly ever used"? I can think of plenty of programs I use frequently that make use of Rust (e.g. Firefox). Compare the use of Rust to, for example, Racket or Haskell or Julia (all fine language). I've definitely interacted with programs written in Rust far more than any of those three languages. So at least Rust is seeing some niche usage. Not trying to come to Rust's defense, just trying to understand this point.
- Rochus 6y agosee e.g. https://www.zdnet.com/article/programming-languages-rust-enters-top-20-popularity-rankings-for-the-first-time/ https://www.zdnet.com/article/programming-languages-rust-ent...
- jeffdavis 6y agoThe thesis of the article was "best chance". So if not rust, then what? C++ and Ada have lots of great possibilities, but those possibilities aren't making it into practice (for whatever reason) despite a lot of time and effort. Apparently, the author thinks that rust might make that leap sooner than Ada/C++. It seems like a reasonable guess, and with some backing by major players, it might well happen. Sure, there's a lot of uncertainty while we are waiting to see the results from a diverse set of large projects. I have used rust enough to be annoyed by it, but none of the annoyances seemed like a major blocker to rust's future.
- jfkebwjsbx 6y ago> but those possibilities aren't making it into practice (for whatever reason) despite a lot of time and effort. What do you mean? Ada is used routinely in some industries.
- jeffdavis 6y agoBy "possibilities", I mean the possibility as an alternative to (or major safety improvement on) C++, which is what the article is talking about: "Microsoft has deemed C++ no longer acceptable...needs to move...best choice on the market today is Rust". Ada is a possibility, but it's just not there and does not show signs of being there soon. There's probably not a net movement from C++ to Ada today, and there is no reason to expect differently over the next 5 years. Rust is not a sure bet either. Lack of major real systems is a big question mark. But basically the article's thesis makes sense to me.
- yxhuvud 6y agoIt might also indicate that a lot of the projects that Rust would be a great fit for tend to live for a long, long, time. That slows down market penetration, regardless of how much better it is.
- atombender 6y agoI wonder if maybe Ada/Spark could achieve a resurgence with a Reason-style syntax modernization. A lot of people are repelled by the word-heaviness of Algol/Pascal-style BEGIN/END.
- jfkebwjsbx 6y agoI don’t understand your argument. Ada, C, C++, D, Fortran... and other old languages can be used right away for general-purpose applications. Swift, Zig, Rust, Go, etc. are popular because there has been a resurgence of new languages in recent years and a lot of new, young developers are helping develop libraries for them. It is simply not as fashionable to program in old languages so some new developers don’t.
- jeffdavis 6y agoThe article's thesis: "Microsoft has deemed C++ no longer acceptable...needs to move...best choice on the market today is rust". If moving away from C/C++ to something, C and C++ are out of the running. You can claim that they should still be considered, but they've been around a long time and people have tried very hard to make them safer. There's been some success, but there's not a lot of evidence that real C/C++ codebases will become dramatically safer in the next 5 years. It looks like some people are looking pretty hard at alternatives. Ada and fortran are both older than C++, so it is not clear that there ever was or ever will be a lot of net movement from C++ to either of those unless something exciting happens. It would be cool if Ada did get more appealing for C++ migrations, but I just don't see it happening. That leaves D and Rust. Apparently a lot of people think rust has the mix of excitement, community, and technology to make it happen. We don't know for sure, but it seems like a reasonable bet to make if you are trying to dislodge C++ due to frustrations about memory safety.