<html><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" class="">Hi Everyone,<br class=""><br class="">Back in the ternary discussion, I kinda suggested the use of Guard but then I realised it’s not a&nbsp;replacement for ternary nor an alternative, it should not be, but may be a helpful addition to Swift.<br class=""><br class=""><font face="Menlo" class="">let a | x &gt; 0 &amp;&amp; x &lt; 10 = “less than ten”<br class="">&nbsp; &nbsp; &nbsp; | x &gt; 10 &amp;&amp; &lt; 100 = “less than a hundred”<br class="">&nbsp; &nbsp; &nbsp; | x &gt; 100 = “more than a hundred”<br class="">&nbsp; &nbsp; &nbsp; | otherwise = “probably a negative”</font><br class=""><br class="">There’s someone who said that it’s reasonable in declarations and another said that he like to explore using the bar (or pipe) character (|).<br class=""><br class="">The <font face="Menlo" class="">where</font> clause should work well with declarations. For instance, consider a function which computes the number of solutions for a quadratic equation, ax^2 + bx + c = 0<br class=""><br class=""><font face="Menlo" class="">let num&nbsp;|&nbsp;disc&nbsp;&gt;&nbsp;0&nbsp;&nbsp;=&nbsp;2</font><div class=""><font face="Menlo" class="">&nbsp; &nbsp; &nbsp; &nbsp; |&nbsp;disc&nbsp;==&nbsp;0&nbsp;=&nbsp;1<br class="">&nbsp; &nbsp; &nbsp; &nbsp; |&nbsp;otherwise&nbsp;=&nbsp;0</font></div><div class=""><font face="Menlo" class="">&nbsp; &nbsp; &nbsp; &nbsp; where<br class="">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; disc&nbsp;= a</font><span style="text-align: -webkit-right;" class=""><font face="Menlo" class=""><sup class="">2</sup>&nbsp;+ b + c</font></span></div><div class=""><font face="Menlo" class="">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; where</font></div><div class=""><font face="Menlo" class="">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; a = 2 * 1</font></div><div class=""><font face="Menlo" class="">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; b = 2 + 3</font></div><div class=""><font face="Menlo" class="">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; c = 6 / 2<br class=""></font><br class="">I believe it may also help lessen the number of lines (in many cases) from using if-else-if and/or switch statements.</div><div class=""><br class="">Anyway, I just thought to start a pitch. If people will like the idea we might give a proper proposal for the boolean guard.</div><div class=""><br class=""></div><div class="">- Angelo</div><div class=""><br class=""></div></body></html>