RE: IfExpr has a mandatory else clause

> So is grammar ambiguity the reason that IfExpr has a
> mandatory else clause ? Are there other design considerations 

Making the else clause mandatory emphasizes that this is an expression
and not a procedural statement: it always returns a result. In most
languages where I've seen a conditional expression, both branches are
mandatory.

An exception of course is <xsl:if> in XSLT, but perhaps that's because
the semantics have only recently been recast into expression form, and
the spec still talks of this as an "instruction" rather than an
"expression".

Michael Kay

Received on Monday, 26 January 2004 06:41:30 UTC