Despite being taught functional programming, I didn't get it until I learned Clojure.
If my first language had been a Scheme instead of Basic / Java I probably would have preferred functional languages.
Now functional languages are another tool in my belt, and I frequently apply their patterns when I'm in more imperative languages.
Do you prefer functional programming or not? It sounds like you do (or at least very open to it) although you didn't learn Scheme first... So why does everybody else have to learn Scheme first in order to reach the same conclusion as you?
I don't think it's true. I didn't learn SQL first and now I prefer that DSL for a whole host of problems. People aren't really that static.
Functional programming patterns are certainly very useful to know. However, the fact that you can apply those same patterns elsewhere seems to seems to negate the need for switching to purely FP languages because you gain next to nothing and you lose almost everything.
This is probably because imperative languages are the majority, so there's no need to soapbox, rather than anything related to the communities or the merits involved.
Note that a lot of people with "preferences" set on imperative languages have simply never stepped out of this paradigm and tried something else.
I don't think it's symmetrical - I'd bet there's more C# programmers who've never dabbled in F#, or even heard of it, than the other way round : )
Take a look at the craziest comments in a Go thread and "noisy fans" seems a little generous.
2. I didn't say noisy fans don't exist, only that it's unfair to automatically lump people with preference for functional approach into this category
And that seems to be sufficient cause for the FP enthusiasts to lose their shit in Go threads.
That sort of thing is the only exposure many of us have to FP people, for better or worse. When they pop in to tell everybody they're doing it wrong in the craziest fashion possible.
It's funny how SQL is a declarative set-language, very different from imperative and other paradigms, yet nobody seems to bat an eye about it having its proper place and role.
Functional programming is like alien to them because it may not be entirely obvious what the instructions are doing at first glance.