"I find the claim that programmers who didn't start with a functional language "have to unlearn a lot" to be misleading. For one thing, how many people are there as a baseline who learn a functional language as their first language and become professional programmers?"
There can't be many at all! I started learning Haskell after a decade of hobbyist game programming and my difficulties haven't been so much unlearning what I already knew but in learning jargon from imperative programming just so I could understand what Haskell tutorials were talking about! Like when Haskell tutorials say, "this is like generics in Java". I've done a little Java and a little OOP but I've never used generics so I don't know what that means. Even worse is when you're trying to use a library that's just redoing something from another language, and the documentation just assumes that you've used that tool in the other language. Like web frameworks. It's really frustrating! I'm actually taking a break from Haskell now to learn Python, because Python tutorials don't assume you already know another language...
no subject
There can't be many at all! I started learning Haskell after a decade of hobbyist game programming and my difficulties haven't been so much unlearning what I already knew but in learning jargon from imperative programming just so I could understand what Haskell tutorials were talking about! Like when Haskell tutorials say, "this is like generics in Java". I've done a little Java and a little OOP but I've never used generics so I don't know what that means. Even worse is when you're trying to use a library that's just redoing something from another language, and the documentation just assumes that you've used that tool in the other language. Like web frameworks. It's really frustrating! I'm actually taking a break from Haskell now to learn Python, because Python tutorials don't assume you already know another language...