![]() ![]() ![]() I use it professionally to implement programming languages, distributed systems, websites, etc. This is a spot in the language design space everyone is trying to get to, and Scala is already there and works great. Haskell is getting OO-style dot-syntax for records. Java got lambdas, is getting type inference and pattern matching and case classes. C# is getting pattern matching and case classes. Python has got static types and case classes, is getting pattern matching and type-driven compilation. Really, every language is converging on Scala: a concise, hybrid OO/FP language with a rich, inferred static type system it uses for bug-catching, tooling support, and performance. ![]() You can use these things if you want, and some people do, but only if you really want to. I've personally never used Shapeless/Akka/Scalaz/Cats in my entire career and I've gotten by OK. There are a bunch of confusing frameworks from Scala's early days that leant it a bad rap, or niche tools that do not fit everyone's use case, but you don't need to use them. How many Python developers would like a 10-20x faster version of the language with better parallelism and concurrency, or Java developers a more concise language better suited for rapid development on top of the huge ecosystem they built their systems on? Scala provides both. As fast as Java with all the great tooling and ecosystem and compiler/IDE help, as concise as Python and just as usable for fast prototyping and rapid development. Scala gets a lot of hate, but honestly it's a great language. ![]()
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |