9 ms·
Unfortunately Rust is making the exact same mistake. Edit: It focuses too much on the language instead of the ecosystem.
by redcannon218 2y ago
Unfortunately Rust is making the exact same mistake.
Edit: It focuses too much on the language instead of the ecosystem.
- pas 2y agoCare to elaborate on which changes do you consider a mistake? --------- To me the goals are sensible the flagship goals (for 2025H1 for example [1]) are all about DX and focus on downstream devs and their needs (all hands, Rust in the kernel). The usual problem of "compile times" [2] (usually link times and LLVM throughput and so on) are things that are being worked on, but fundamentally they all can only be solved by caching, incremental compilation, and better developer tooling that are not language problems. [1] https://rust-lang.github.io/rust-project-goals/2025h1/goals.html#flagship-goals https://rust-lang.github.io/rust-project-goals/2025h1/goals.... [2] https://old.reddit.com/r/rust/comments/1if5wpm/high_hopes_for_rust_where_are_we/ https://old.reddit.com/r/rust/comments/1if5wpm/high_hopes_fo...
- redcannon218 2y agoPlease see my edit
- culi 2y agoRust is younger than Scala. It makes sense for it to still focus on features
- redcannon218 2y agoBut Go has proven that the ecosystem is way more important than the language. It's time to shift priorities.
- sideeffffect 2y agoGo has proven that people want cheap threads. If it didn't have it, it wouldn't get anywhere. Now even Java has cheap threads (Loom). And Go even has generics. Just 20-ish years later than Java. And it's likely that more features that now Java has will trickle into Go. If Go wants to survive. All this to say that there is no space in the market for another language which is a stupid simple Algol. Go already occupies that space. And even Go will have to add features developers want/need, if it doesn't want to get cornered out of the market. It's not only Scala that must evolve.
- zozbot234 2y ago> Now even Java has cheap threads If by "cheap threads" you mean M:N threads a.k.a. fibers/green threads, Java had that on Solaris well before Go.
- gf000 2y agoThat's not even remotely the same thing as the current virtual threads, that automagically turn (many kind of) blocking IO into non-blocking.
- gf000 2y ago> Now even Java Java is one of the few languages that does have it, besides Erlang, Haskell and Go. That "even" is absolutely not warranted.
- culi 2y agoGo has proven that we still need the backing of large corporations for success in the tech world despite the fact that open-source powers most major tech companies today Java needed Apple, Go needed Google, React needed Facebook, TypeScript needed Microsoft, etc In this way Rust is actually a pretty unique success story in that there's no singular major tech firm pushing it
- pkolaczk 2y agoYet it's Go that added big language features recently (generics, iterators, changing semantics of for loop) and not Rust. Rust hasn't gotten any new major features since adding async ~7 years ago. Rust is much more stable language-wise than Go, partly because it had much more features in 1.0, and Go has to gradually add them (what's next? enums?). It also has much more advanced mechanisms allowing to both evolve the language and not break existing code (editions). Things that neither Go nor Scala figured out yet.
- sieabahlpark 2y ago[dead]
- packetlost 2y agoIt... really isn't though?
- pkolaczk 2y ago1. Rust has had 10x better tooling right from the start. Cargo vs SBT, no joke. 2. Rust has improved its compiler performance by >3x in the last 5 years. 3. Rust hasn't gotten any major new language feature in the last 6 years. Most language improvement is improving orthogonality of existing features. 4. Rust has an excellent backwards compatibility story also right from the start. Code/libraries written in 2015 can be still compiled and used together with code from 2025. 5. Rust has a serious backing from all major IDE / editor providers. 6. Rust has integrates easily with other languages and ecosystems. It's easier to call Rust from Python than to call Scala from Python. It's easier and more performant to call C from Rust than to call C from Scala. Things like that. It's sad that Scala even struggled with interoperability with Java; which should theoretically be easy as it is the same platform. Seriously, doesn't look to me like the same mistakes. It's actually quite opposite.
- redcannon218 2y agoI need to hash something, one way or another, in virtually 100% of my projects. Where is SHA-256 in the standard library?
- pkolaczk 2y agocargo add sha256
- anta40 2y agoRust standard library is minimalist (at least compared to Java/.NET), so no SHA-266. If you want a more useful standard library, perhaps consider Go.
- pkolaczk 2y agoIt is minimalist because it has to support many platforms and must be lightweight and easy to port. It also must be stable for a long time. Once something lands in the standard library, it is very hard to remove / modify / redesign. How many half-broken date time implementations Java ended up with? But it makes up for the minimalist stdlib by making it a breeze to use third-party libraries.
- vaylian 2y ago> Edit: It focuses too much on the language instead of the ecosystem. What do you mean by that? What is missing?
- pas 2y agoThey mentioned SHA-256 as an example, here -- https://news.ycombinator.com/item?id=43483313 https://news.ycombinator.com/item?id=43483313