Haskell programmers says that Haskell is just fine as well, but in the end there aren't many big programs with complex architecture in these languages. Compilers, interpreters, crud servers etc, those things are very simple architecturally so for them these languages are fine, but for more complex cases these pure languages seems to be too cumbersome.
When you try to adapt your program to fit the needs of humans and technology it will become complex no matter what you do. The world is full of problems that can't be decomposed nicely because they are created by millions of people over decades each doing things slightly differently and you need to make a program that fills their needs, if you think those kind of problems don't exist you are just naïve. Those are the programs with the most complex architecture.