> There's no widely used successful system written in Haskell. Yes, there's GHC, Agda, Idris and other research tools but they are marginal.
Google's Ganeti?
Microsoft's Bond?
> It's untrue that mutable state is the main reason of problems with code.
Its certainly one of the biggest, if not the single biggest (the only thing I can think of that gets cited nearly as much is multithreading/parallelism, and the main source of problems in that domain is also managing mutable state in that context.)
> You can manage state in Java and C# in any other language.
Sure, Turing equivalence means there is very little difference in what languages can do, just in how suitable the abstractions they present are to enabling humans to do it effectively.
> Haskell programmers are usually smarter than Java programmers, but they often don't want to work on tasks which they aren't very interested in, which are almost non existent, or have little business meaning.
So, take Java programmers (particularly smart ones) and teach them Haskell. Bang, you've got Haskell programmers without worrying about the interest distribution among pre-existing Haskell programmers. Learning PLs, for skilled programmers, isn't a huge deal -- the good Java programmers won't have much problem becoming good Haskell programmers.
Those aren't the only two known projects, those are just two examples of open source projects that are, in addition, used in key infrastructure by the major solutions provider that is the original source of the project, and so widely, if indirectly, used.
Compare this list to Java/C#/C++ used in the industry. Or even to Scala/Clojure/Erlang used in industry. There will be several orders of magnitude difference.
And, so what? Sure, Haskell is less popular in industry many other languages. That was true of all the currently popular industrial languages before they became popular. But its certainly not the case that there are no succesfull uses of Haskell in significant systems.
> The most popular language, namely C#, Java and C++ became popular quite quickly.
But those languages had corporate backing. Haskell doesn't have corporate backing, so shouldn't you compare it to languages that became popular and didn't have corporate backing?
Google's Ganeti?
Microsoft's Bond?
> It's untrue that mutable state is the main reason of problems with code.
Its certainly one of the biggest, if not the single biggest (the only thing I can think of that gets cited nearly as much is multithreading/parallelism, and the main source of problems in that domain is also managing mutable state in that context.)
> You can manage state in Java and C# in any other language.
Sure, Turing equivalence means there is very little difference in what languages can do, just in how suitable the abstractions they present are to enabling humans to do it effectively.
> Haskell programmers are usually smarter than Java programmers, but they often don't want to work on tasks which they aren't very interested in, which are almost non existent, or have little business meaning.
So, take Java programmers (particularly smart ones) and teach them Haskell. Bang, you've got Haskell programmers without worrying about the interest distribution among pre-existing Haskell programmers. Learning PLs, for skilled programmers, isn't a huge deal -- the good Java programmers won't have much problem becoming good Haskell programmers.