Peter and I are discussing the possibility of including some kind of conditional operator, like `foo ? bar : baz' in C. Since GPC uses GCC's backend, this should be easy to do semantically, the main question is about syntax:
I would like to propose the following syntax: <expr> if <cond> else <expr> This is concise and nice (you can view "if <cond> else" as infix operator). Disadvantage: it requires priorities/parentheses for proper binding, it uses the if/else, which also appears in the conditional statement (this is also an advantage, since it does not require new reserved words/symbols). This syntax (not the sugar) is preferred by Tony (sir C.A.R.) Hoare in Unifying Theories of Programming C.A.R. Hoare and He Jifeng Prentice-Hall, 1998 Hoare uses sugar with a left-pointing open triangle instead of "if" and a right-pointing open triangle instead of else: ( Expr1 <| Cond |> Expr2 ) I do not think this is a very "urgent" extension (but it would have been nice if it had been taken up in some standard). Tom Verhoeff