<P> In Haskell 98, there is only an if expression, no if statement, and the else part is compulsory, as every expression must have some value . Logic that would be expressed with conditionals in other languages is usually expressed with pattern matching in recursive functions . </P> <P> Because Haskell is lazy, it is possible to write control structures, such as if, as ordinary expressions; the lazy evaluation means that an if function can evaluate only the condition and proper branch (where a strict language would evaluate all three). It can be written like this: </P> <P> C and C - like languages have a special ternary operator (?:) for conditional expressions with a function that may be described by a template like this: </P> <P> This means that it can be inlined into expressions, unlike if - statements, in C - like languages: </P>

What do you mean by nested if statement