Explicit term inference with Scala 3
A summary of what Scala is great for:<p>- Safe and high performant concurrent programming. Scala is miles ahead of most other languages here and pretty much on par with the best ones (such as Haskell)<p>- ETL &#x2F; data transformations. Python is a big player here - but for stable and performant data pipelines, I strongly believe Scala is the better choice. For explorative things, python has the edge though.<p>- Actor systems on the JVM. I believe that most &quot;scalable&quot; systems are over-engineered. A well configured postgres &#x2F; elasticsearch and a machine with your application on good hardware goes _very_ far. But sometimes it&#x27;s not enough and then Scala offers a great solution with Akka on the JVM. Erlang&#x2F;Elixir with their runtime are probably even better, but Scala offers the better typesystem and one can stay in the JVM world if they want.<p>- in-language custom DSLs. No seriously, Scala is the best language I know in terms of building typesafe, customizable DSLs within the language, making it almost look like another language. This is great if not so techy folks are to make changes to actual code in an easy way. The link in this post here shows some examples but it goes beyond.<p>- Writing glue-code. Surprisingly, I think Scala is better than python and many other languages here, because of the sheer power of composability of the language and ways to connect pieces with each other in a typesafe manner. The reason for this lies mostly in the concept of implicits, which both enables great power and reusability but also makes the learning curve much steeper.<p>This list might be a bit subjective and I don&#x27;t know every language out there, but as the questions comes up almost everytime, I wanted to list the strengths of Scala in the areas where most other languages can&#x27;t compete with it.