| Haoyi is an amazing guy. Last night at 8pm and 2pm this morning I submitted two PR to the Mill, he merged within one hour. In about 7 years, he helped to create an eco-system around Scala: - REPL (ammonite) - build tool (mill) - JSON serializer(uPickle) - web framework (cask) - test framework(uTest) - http client lib (requests-scala) - HTML tag lib (scalatags) - parser(fast parse) Scala development and tool can be divided into four categories - Java (OO): wrong idea for many developers. Use Kotlin if you like OO. - Haskell (pure FP, even HKT): good for fun but not for profit. Use Haskell for pure FP. - Erlang (Actors): fibers are better. Use Clojure if you like Actors. - Easy: practical FP, the above tools from Haoyi. Use them if you program in Scala I'd guess all is done after work. Please support him to make Scala better: https://www.patreon.com/join/lihaoyi |
Usually the suggestion for actors is to use something else, but I think the main exception is the big one. If you have a need for horizontally scalable concurrent state and behavior, there hasn't really been a good alternative to distributed Akka Cluster Sharding. People are working on it, but I don't think we're there yet (although my opinion might be six months out of date, I haven't caught up).