Then you kinda lack support from Java's libs (Though I rarely use these, because game dev).
Quite the opposite. For example, let me show you bit of custom Clojure syntax we have. This code is "obvious" but I've removed the sensitive bits. This is a simple jetty endpoint from our api code:
Code:
(defauthed-handler get-user :insensitive [request uid]
(let [suser (user-data/fetch-clean uid)]
{:status 200 :body (generate-string suser)}))
This seemingly innocuous piece of clojure does a lot. It defines a jetty handler which automatically uses Jackson to parse the JSON request body. This "authed" handler is "insensitive" which means that it uses a different set of session expiration time rules than a "sensitive" handler. It is "authed", which means it automatically does UID->token verification and has canned responses.
This little piece of code touches 3/4 of the apache stack, automatically injects logging and metrics tracking. The clojure macro that defines this is about 30 lines long (many of those lines short). So yeah, we're poaching pedantic and over-annotated Java libraries and making them less sucky. All the annotations in the world cannot save Java developers from the march of progress.
Plus, my standards for good syntax was based off of Java from the very beginning, so changing it would be difficult. Just my opinion.
Your opinion is yours, and you're entitled to it. It makes you weak in the kind of kung fu we're talking about, though. Feel free to be offended by this or roll your eyes at the metaphor. The vast majority of people in this field we're discussing are terrible at what they do and it's only the fact that there are so few people that do it that enable them to have any standing whatsoever.
I was never a fan of FP's explicit implicitness, honestly. (confusion and pun not intended)
I'm a professional programmer. I can coherently talk to you about category theory. In my career I have delivered products in over 30 computer languages, and I've been a technical editor for two major technical publications and a proofreader in 4. What you just said, to me, makes 0 sense. I can't even begin to unwrap it, and I just tried.
Programming is like running through a landmine field. The field is should be narrow enough to walk through , but too big and you're prolly gonna die a couple of times, if there's respawn. That's how I view Scala's flexibility (yeah, it's the big field).
Let's just pretend I understand what you mean...
If you're describing the SOCIAL effects of Scala's relative indifference to how its community has evolved around features, there is an argument to be had. If your argument that a silly little attempt at a "One Way To Do It" language approach like Python is not preaching to ignorance, you will find nothing but scorn from me.
A languages flexibility is important. It allows you to mold it around the concepts that are being explored by the program. Programming for programming's sake is diverting, but most people want it to DO something. A flexible language like Haskell, Clojure, Scala, or even Ruby can sort of wrap itself around the concept and become transparent.
Plus I don't code for cash, I code because I want to. It's more fun than any video game ever :O
You can love what you do, and do what you love. And get paid.