Scala's decline started before Scala 3, which brought its share of breakage (sometimes for dubious reasons, like the new syntax) but also fixed many warts. Tooling has improved a lot lately, but it's too late.
> if you are not bound to the JVM I really don't understand why you would go with Scala today.
Scala's metaprogramming abilities coupled to a powerful type system are still unmatched. Among mainstream languages, only TypeScript gets somewhat close. For your typical service oriented architecture, libraries such as Tapir or ZIO HTTP are pretty nice. I haven't found anything as pleasant in other languages.
That said if an LLM can write 95% of your code today, this point is a bit moot, sadly.
D
It's not really moot though. The primary benefit of concise but robust frameworks like ZIO is that they are easy to read (like the program is mostly business logic with minimal syntax noise/programming language bookkeeping), not that they're easy to write (though that's true too). Metaprogramming also works nicely with LLMs because you get the expressiveness of something like Python (or better) while retaining a strong type checking layer to give a feedback loop to the LLM. In fact, it kind of shines with an LLM because you largely don't care if things like macros are ugly as long as they produce correct code to present to the typechecker/compiler, so it makes more sense to vibe code the metaprogramming layer to give yourself whatever you need to have straightforward business logic. Conciseness and direct encoding of business logic also helps to keep context focused.
Really this is all true with humans too, but IMO it's multiplied with LLMs because they are insanely capable at dealing with the guts of metaprogramming wizardry if they need to, so you don't end up in a world where that one guy that understands it leaves and then no one can possibly maintain it.