I think if I had to learn Haskell first, then I would've just given up at the start.
I think if I had to learn Haskell first, then I would've just given up at the start.
To my knowledge across 4 years there, nobody ever dropped out because of the Haskell.
People usually struggled with the maths instead.
People also did not have more problems getting Haskell concepts right than linked list modification in Java.
I've met a lot of people (at work and post-grad) who have graduated from colleges without an idea of what a functional language is or the concepts behind them. I don't blame them, but its a pity to find so many workarounds in legacy code which could have benefited from functions as parameters and less state in general.
We had Haskell in college too, almost 30 years ago, and even then it was one of the hardest courses at school. This was before IO monad, just as the language was being created in the early 90s.
I believe (based on exactly zero hard data) that FP fits the way some peoples' minds work, and procedural fits how other (many more) peoples' minds work. The ability to pass a Haskell class is not the same as the ability to program competently in at least one language.
We only get better software if the people who don't pass the class proceed to not write software, as opposed to writing software anyway without the training available in the following courses (and presumably writing worse software) or being replaced in industry by others who could not have passed that filter.
If neither of those happens then we presumably will have better software. We will also have less software. It's not clear whether that trade-off is the right one.
I managed to get through some of them, was weed out from others. That's life.