4 ms·
Scala has accumulated a lot of cruft on its own over the years and it hasn't always succeeded, but at the same time I'd say that a core value has always seemed
by Nullabillity 3y ago
Scala has accumulated a lot of cruft on its own over the years and it hasn't always succeeded, but at the same time I'd say that a core value has always seemed to be trying to unify Java's weird special cases ("why does every class member have to support being static, instead of just supporting first-class singletons?", "why are primitive types not part of the type hierarchy?", "why null?", or even "why are some type conversions hard-coded in the compiler?").
- n_plus_1_acc 3y agoThey cleaned up a lot of warts (like implicits) with scala 3
- _a_a_a_ 3y agoI don't think implicit's were a wart, and AFAIK in Scala 3 implicits effectively still exist but with a different syntax (but not touched it for a while, so may be wrong)
- agrounds 3y agoScala 2’s implicits have been a source of great pain in many Scala codebases at many different organizations. They are too powerful. The situation is comparable to languages that depend on gotos instead of structured control flow elements (for/while loops, if statements, function/subroutine calls). I can’t speak for Scala 3 as I haven’t used it at all. If they’ve limited the power of implicits to a few more structures usages it would be a great benefit to the language.
- _a_a_a_ 3y agoToo powerful? Or just ab/mis-used?
- sideeffffect 3y agoIn Scala 3, implicits live on under a different name. They're called _given_s. But they're reduced to just one use case: propagating a context through (and deriving one given form others). And Type Classes are subsumed under this use case. The other use cases have been essentially removed: * Extension methods are now its own feature, relying on completely different mechanism * Automatic conversions have been severely curbed and de-emphasized, although they are still there, but much more explicit
- bombcar 3y agoAll I know about scala is it takes aeons to compile scala Minecraft mods, and few people know how to fix them.