in reply to
Re^2: regex and "Functional Programming"
in thread regex and "Functional Programming"
In defense of Haskell, you don't need to know a lot about monads to do I/O, sorta like how you don't need to know a lot about streams to do I/O in C++. Of course, Haskell's type system makes it hard to ignore the IO monad, and eventually you're going to run into trouble if you try to obstinately ignore monads, but you're hardly forced to grok monads in fullness just to write "Hello, world!" to the screen.