9 ms·
Demonizing engineers isn't a winning adoption strategy. I'm convinced Rust will fade away like Scala precisely because criticism and bad experiences are met wi
by infamouscow 4y ago
Demonizing engineers isn't a winning adoption strategy.
I'm convinced Rust will fade away like Scala precisely because criticism and bad experiences are met with poorly constructed straw men. It illustrates how immature the language and community are if this is the best argument available.
Virtually every HN thread for years has comments condemning C and C++ developers. Not a single one of those lunatics seems to understand most C and C++ developers have managers and company policies they must navigate. What do you think is going to happen when someone gives this straw man to their boss?
If people are going to be demonized for trying Rust and switching to something else, for whatever reason, the net effect will be people will avoid Rust and find something nicer like Swift, Nim, Pony, and Zig.
- Ygg2 4y ago> I'm convinced Rust will fade away like Scala precisely because criticism and bad experiences are met with poorly constructed straw men. It illustrates how immature the language and community are if this is the best argument available. I doubt it. Scala choices were directly dictated by JVM. No JVM language managed to outpace Java. Java usually adds most interesting features from other such langs and assimilates them. Rust doesn't let underlying compiler dictate everything. There is a huge risk in regards to complexity, but community has (so far) been vocal against such things. Yes, Rust community isn't a cult of hivemind pod people. Imagine my shock! Honestly as a dev coming from higher levels langs (Java), being able to write sensible non-GC code and it not dying in segfaults, UB sheitfuckery, or null pointer bullshit is a gift. Plus no data races? Sign me up. Scala gives you a better horse (Java + Haskell), Rust gives you a car with a seatbelt.
- infamouscow 4y agoI understand the technical merits of Rust and how it's distinct from the JVM. The point was non-technical merits matter just as much, if not more.
- Ygg2 4y agoTrue, but I already addressed it. So far Rust hasn't entered overly complicated spot for me. Yes, borrow checker is harsh. Lifetime's are a pain. But only way out by other languages are: A) Add GC/RC B) Sweep it under rug, and pray. It seems borrow checker is irreducible complexity. Scala otoh made Trait order implementation matter and allowed custom operators. Compared to those blunders, Rust mistakes are minor.
- 3836293648 4y agoSay that to ?const ?async. If the keyword generics group doesn't accept that they're wrong they've killed Rust.
- zozbot234 4y ago?const ?async is placeholder syntax. They'll bikeshed something better while stabilizing the language feature, much like the existing .await syntax which was chosen very late in development of async.
- 3836293648 4y agoNot according to their blog post yesterday. They were absolutely defending it as the only consistent and reasonable choice
- Ygg2 4y agoWhat? Where did you get that idea? I talked with them on Zulip, they were perfectly reasonable. Even on Reddit they consider alternative syntax like `print<?async, ?const>`. Issue is. They want code generation to solve coloring problem of async. I asked about using `#[maybe(async)]` syntax but they pointed that attribute macros have deficiencies. Can't differentiate on async-ness or lack of it, plus attribute macros lack exhaustiveness check that `match expr` afford.
- Ygg2 4y ago
- ebruchez 4y ago> Scala choices were directly dictated by JVM Initially, yes. But Scala has evolved beyond the JVM, with Scala.js [1] being rock-solid, and Scala Native [2] under development. Neither are truly hampered by the initial JVM roots of Scala. > Scala gives you a better horse Weird analogy ;) [1] https://www.scala-js.org/ https://www.scala-js.org/ [2] https://scala-native.org/en/stable/ https://scala-native.org/en/stable/
- Ygg2 4y ago> Neither are truly hampered by the initial JVM roots of Scala. I'm reminded of a talk ex-Scala guy had, where he rhetorically asked "Scala, if Java cut their nose... Gods what are you doing?!". Stuff like compareTo being an 32 bit int, rather than just 8 bit, because compatibility, and so forth. I doubt they got rid of those nitpicks. Although what pushed me of it was order dependent Traits and implicits everywhere. Plus Arcane type signatures. I haven't kept up with Scala since 2, but if it works for you, it works for you. > Weird analogy - Will get you to your destination, intact - Will shit everywhere (GC) - Knows few useful tricks (Type system) - Not made of metal (not low level)
- mwcampbell 4y agoPay attention to this, fellow Rust enthusiasts. Seeing this makes me ashamed to have chosen this language (edit: and community) for my current open-source project.