In other languages when the compiler misses an optimization you get a constant order penalty on a small piece of code.
In Haskell when the compiler misses an optimization the performance hit is potentially unbounded, as it could think anything is a dependency. (You want the first N digits of pi? Just wait while I calculate all of them for you...)