<div dir="ltr"><div class="gmail_extra"><div class="gmail_quote">2016-02-02 10:07 GMT+01:00 Michael Van Canneyt <span dir="ltr"><<a href="mailto:michael@freepascal.org" target="_blank">michael@freepascal.org</a>></span>:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">Call me old fashioned, but then I think<br>
  foo:=iif(Condition1,<br>
           iif(Condition2, ThenExpr1, ElseExpr1),<br>
           iif(Condition3, ThenExpr2, ElseExpr2));<br>
is more clear.<br>
<br>
The "if then" construct is really confusing.<br>
"if then" is a statement, not an expression.</blockquote><div><br></div><div>Yup, you are old fashioned :).</div><div><br></div><div>maybe is good idea to discuss "it then else" expression in dedicated thread "if-then-else expression".</div><div><br></div><div><div>conclusion of this thread:<br></div></div><div><br></div><div>*the best new name for "IfThen intrinsic" is iif*</div><div><br></div><div>unless someone has a good opposite arguments? Pros for iif:</div><div><br></div><div>- no conflicts with existing RTL code base (in this matter much much better than IfThen)</div><div>- compatible with existing pascal solution (Oxygene)</div><div>- short and logical name</div><div><br></div><div>Cons:</div><div>- a little different behavior than in other languages (but still compatible with Oxygene)</div><div>- I like &if ;)</div><div><br></div></div>-- <br><div class="gmail_signature"><div dir="ltr"><div>Best regards,<br>Maciej Izak</div></div></div>
</div></div>