Is there something deeper to it, or is it just a shitty excuse for not writing, e.g. three for loops in [(a, b, c) | a <- [1..10], b <- [1..10], c <- [1..10], a^2 + b^2 == c^2] and it still being O(n3)?
Hand-crafted pointless style is superior. Please, do suggest improvements. (Maybe some parens can be removed... I don't have a compiler handy to test, though.)