3 ms·
Is it though? Most of it seems to be hype. It’s great that programming languages get researched and improved, but do they actually improve? How is improvement m
by darthrupert 6y ago
Is it though? Most of it seems to be hype. It’s great that programming languages get researched and improved, but do they actually improve? How is improvement measured?
- dgb23 6y ago> How is improvement measured? This is a good question that like to get answered too. It is reasonable to assume[0] that the language can keep its promises. However I look forward to seeing data on this in the future. [0] https://msrc-blog.microsoft.com/2019/07/22/why-rust-for-safe-systems-programming/ https://msrc-blog.microsoft.com/2019/07/22/why-rust-for-safe...
- darthrupert 6y agoI've studied and followed Rust since before 1.0. I have no doubt that it lives up to its technical promises. What I'm more skeptical about is whether living up to those promises yields a tangible benefit. By skeptical I don't mean to imply that using Rust doesn't yield benefits, just that I would like the PL research world to be in a place where questions like this can be solved properly.
- foota 6y agoI don't think calling it mostly hype is anywhere near reasonable. It's a mature language with a large ecosystem in use by a variety of companies.
- ncmncm 6y agoIn ten years it will be mature, if anyone still uses it. If not, it will be because people who like Rust today are off chasing some new hotness. Whatever the direct technical impact of the layoffs, the language's credibility has taken a huge blow. Its future was already uncertain, and is, being honest with ourselves, substantially moreso now. There is a lot to like about Rust. I hope something survives. A sequel--Dust?--could keep its strengths but focus at the outset on fast builds and better visibility into dependencies, to avoid NPM disease. There must be lots of ideas that it seemed too late for. Maybe make it relatively easy to import old Rust code, to help get jumpstarted? Rust's real reason to exist, to displace C, was not working, and may have been doomed from the outset. Rust has been taking users from Java, Go, and Python; and some C++, in places where coding has been hamstrung by archaic "style" restrictions. But very few C coders have moved. That may be just because any who might have jumped already had. (Some of those might have come over from a pause at Go.) Rust is a far, far better language than Java and Go. It never had a chance against C++, which picks up more new users every single week than the total who have ever used Rust. If Rust or its sequel could give people on Java and Go a language with a future, that would be a seriously worthwhile achievement. Making a borrow checker less strident would aid adoption; so you always know whether your code and each dependency are "clean", without being prevented from getting work done. The recent experience with that very fast GUI library with a few too many "unsafe" bits made a very deep impression. Nobody wants that experience, especially starting out. Code that is not borrow-clean would get clean soon enough if it is used; and, frankly, dead code never needs to be clean.
- foota 6y agoWhat grounds do you have for saying it's not a mature language? It's more than 10 years old. Subjectively I would feel as confident in safety and feature set as any other mainstream programming language. I also strongly disagree that Rust has any sort of an uncertain future. It appears to be a well run and stable project. Regularly putting out releases from a variety of contributors.
- ncmncm 6y agoThe norm is for well-run, stable language projects to fizzle. Even massively funded and legislated languages do: consider Pascal, Smalltalk, Ada, and Common Lisp. Ultimately, the numbers count. C++ in 1990, at 10 years, was very far from mature. Rust has come up fast, but maturity, by definition, takes time.
- foota 6y agoI feel like we're working from different definitions of mature? I'm just looking at how suitable it is for use in production, not whether it's going to last forever.
- ncmncm 6y agoReadiness for use in production is the definition. But a language that falls out of use before the products written in it do was not ready. Look around at mature languages. They have shelves of books written about them, in numerous languages. More of their users are employed to write in them than not. They have conferences where most attendees are employed coding them. There are college courses on them. They are specified clearly enough to make a new implementation, and typically have multiple implementations. Multiple important products are written in them. Users get calls from recruiters inviting them to do it elsewhere. Rust will get all this if it lasts.
- artursapek 6y agoIt doesn't sound like you've learned and used it.