51 karma · joined December 21, 2019
I encourage you to try and consider the author's points instead of simply attacking her character.
I'll be there if you need help with that.
fun read(path: &Path): io.Result[Vec[UInt8] {
var file = File.open(path).orReturnErr()
var bytes = Vec.new()
file.readToEnd(&mut bytes).orReturnErr()
Ok(bytes)
}
would be good enough for me, tbh.The desire to return the same type of collection lead to overall slow performance; it turned out it's a design dead-end that Scala is still suffering from.
It should simply have been abolished and replaced, instead of applying some minimal fixes in 2.13 that preserved the wrong design choices.
Basically, unlimited look-ahead.
I think Lobsters has done extraordinarily well in attracting domain experts while keeping out the valley-style surveillance capitalist blockchain AI expert “investors”. Non-tech articles are explicitly off-topic on Lobsters.
Lobsters may have fewer experts in total numbers, but experts make up a bigger share of the community, which means that the amount of pointless, fluff, snarky comments is way lower.
The hats¹ also means that experts are easily recognizable, because they can display the badge when they comment somewhere as an expert-on-that-topic.
It removes a few things and adds a whole lot of new stuff to it.
It's a bigger, more complex language, even if you credit all the cleanups that were already in Scala 2 to Scala 3.
What sunk Scala on Android was largely the completely lack of interest from the core team.
Everything that Scala on Android achieved was pretty much _despite_ the actions of Scala's upper echelon.
- It's hard to get a good message out, when core members spread FUD by bringing up problems that were solved year ago (like the big std lib issue).
- The core team's perception of Scala was always inward – new platforms existed such that Scala developers could run their code in more places, not because it could attract new developers from these existing ecosystems to Scala.
(Scala.js partially overcame this by herculean efforts of individual members of the Scala.js community that got the word out to the JavaScript world about Scala.js.)
- Core Scala pulled the plug from Android support in the backend. So Scala on Android was pretty much left to die on an outdated Scala version.
- Something like TASTY (an interchange format that can be recompiled on the fly to target new backends), which could have dealt with the problem above – was promised for years, but still hasn't shipped.
- The core team was against even acknowledging the existence of Scala on Android on the website – good luck in convincing that Scala on Android works, if the official website/documentation doesn't mention it with a single word.
- Core Scala treated the main contributor with so much public disrespect, that I'm still surprised he didn't outright quit back then. It takes balls to publicly blame the main contributor of Scala-on-Android for not working on the project full-time, but also conveniently managing not to tell him this crucial "requirement" for half a decade. And with "full-time" I mean "unpaid full-time".
It's a sad story, because Scala-on-Android shipped with some amazing features like hot-code-replacement years before Google managed to ship it. The typed resources stuff was also pretty impressive.