no surprise - you got a lot of answers :) it is the best part of Haskell, after all :)
the secret Haskell weapon is lazy evaluation which makes *everything* short-circuited. just consider standard (&&) definition:
(&&) False _ = False (&&) True x = x
-- Michael T. Richter <ttmrichter@gmail.com> (GoogleTalk: ttmrichter@gmail.com) When debugging, novices insert corrective code; experts remove defective code. (Richard Pattis) |