3 ms·
That's about my experience. The language is maturing very well and the library ecosystem is just amazing. (Looking at you, lihaoyi!). I really appreciate that
by esarbe 7y ago
That's about my experience. The language is maturing very well and the library ecosystem is just amazing. (Looking at you, lihaoyi!).
I really appreciate that I can walk the full gradient from immutable-functional to impure-imperative with one language, depending on the context and the requirements. It takes some discipline for a team (code reviews, regular feedback, discussion on approaches) but I'd say that's true for any language to some degree.
Then there is the ecosystem that's getting better and better with every year, with more and more libraries building on and onto each other.
SBT has been a sore point in the past, that has been ameliorated quite a bit in the past three years. SBT 1.3.x together with GraalVM native is a game changer! And then there are lots of other build tools that less ambitious and more approachable than SBT, if SBT simply isn't your cuppa.
Scala.js is also quite amazing. Scala is definitively underrated in that area. Being able to stay in one tool for a full stack application and being able to shift code seamlessly up and down the stack, depending on the current requirements has been an eye opener for me.
Biggest Scala pros
- Terse expressive syntax with a strong type system
- Welcoming community and creators
- Amazing libraries and rich ecosystem
- World-class tooling!
I the future I hope that Odersky and the core team will continue to identify "implicits" use cases and provide dedicated syntax for them, just like they did with extension methods in Scala 3.
- idclip 7y agoThis comment and lihao’s are rekindling a flame in my chest.
- AheadOfTime295 7y agoScala 3 has been around for seven years on Github https://github.com/lampepfl/dotty/commit/2308509d2651ee78e1122b5d61b798c984c96c4d https://github.com/lampepfl/dotty/commit/2308509d2651ee78e11... Scala.js and Scala Native will support Scala 3 eventually. SBT isn't nearly as bad as it used to be. It's an open question how much more it will "improve".
- esarbe 7y ago> Scala.js and Scala Native will support Scala 3 eventually. I'm looking forward to it! Now that the Dotty experiments come to an end and development of the Scala language shifts away from Scala 2.x to Scala 3 I think this becomes feasible!