You can use arrow keys to navigate in the map.
Lots of popular languages have type system with similar level of sophistication: Scala (its type system is even more complicated than Haskell's), Swift, Rust.
A programming language has a limited "strangeness budget", and if this budget is exceeded, the language becomes too hard to learn.
It's considered weird and hard by average programmer not because of type system but because of laziness and purity.
haskell is already mainstream
The term "mainstream" hasn't been defined.
Some functional languages are already mainstream in some environments.