<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
</head>
<body>
<style type="text/css" style="display:none;"><!-- P {margin-top:0;margin-bottom:0;} --></style>
<div id="divtagdefaultwrapper" style="font-size:12pt;color:#000000;font-family:Calibri,Helvetica,sans-serif;" dir="ltr">
<p>Sounds very interesting :)</p>
<p><br>
</p>
<p>In the past I have been writing the following instead:</p>
<p><br>
</p>
<p>true caseOf: {</p>
<p>    [aNumber isEven] -> [<span>'That is an even number.'].</span></p>
<p><span><span style="font-family: Calibri, Helvetica, sans-serif, EmojiFont, "Apple Color Emoji", "Segoe UI Emoji", NotoColorEmoji, "Segoe UI Symbol", "Android Emoji", EmojiSymbols; font-size: 16px;">    [aNumber isOdd] -> [</span><span style="font-family: Calibri, Helvetica, sans-serif, EmojiFont, "Apple Color Emoji", "Segoe UI Emoji", NotoColorEmoji, "Segoe UI Symbol", "Android Emoji", EmojiSymbols; font-size: 16px;">'That
 is an odd number.']. </span></span></p>
<p><span><span style="font-family: Calibri, Helvetica, sans-serif, EmojiFont, "Apple Color Emoji", "Segoe UI Emoji", NotoColorEmoji, "Segoe UI Symbol", "Android Emoji", EmojiSymbols; font-size: 16px;">}.</span><br>
</span></p>
<p><span><span style="font-family: Calibri, Helvetica, sans-serif, EmojiFont, "Apple Color Emoji", "Segoe UI Emoji", NotoColorEmoji, "Segoe UI Symbol", "Android Emoji", EmojiSymbols; font-size: 16px;"><br>
</span></span></p>
<p><span><span style="font-family: Calibri, Helvetica, sans-serif, EmojiFont, "Apple Color Emoji", "Segoe UI Emoji", NotoColorEmoji, "Segoe UI Symbol", "Android Emoji", EmojiSymbols; font-size: 16px;">but your code is much more beautiful :)</span></span></p>
<p><span><span style="font-family: Calibri, Helvetica, sans-serif, EmojiFont, "Apple Color Emoji", "Segoe UI Emoji", NotoColorEmoji, "Segoe UI Symbol", "Android Emoji", EmojiSymbols; font-size: 16px;">I think both variants have a contrary semantic, but on the
 other hand it just reads intuitive:</span></span></p>
<p><span><span style="font-family: Calibri, Helvetica, sans-serif, EmojiFont, "Apple Color Emoji", "Segoe UI Emoji", NotoColorEmoji, "Segoe UI Symbol", "Android Emoji", EmojiSymbols; font-size: 16px;"><br>
</span></span></p>
<p><span><span style="font-family: Calibri, Helvetica, sans-serif, EmojiFont, "Apple Color Emoji", "Segoe UI Emoji", NotoColorEmoji, "Segoe UI Symbol", "Android Emoji", EmojiSymbols; font-size: 16px;"></p>
<div>aNumber caseOf: {</div>
<div>
<div style="font-family: Calibri, Helvetica, sans-serif, EmojiFont, "Apple Color Emoji", "Segoe UI Emoji", NotoColorEmoji, "Segoe UI Symbol", "Android Emoji", EmojiSymbols; font-size: 16px;">
   [42] -> ['That is correct.'].</div>
   [:n | n even] -> ['That is an even number.'].</div>
<div>   [:n | n odd] -> ['That is an odd number.'].</div>
<div>}.</div>
</span></span>
<p></p>
<p><span><span style="font-family: Calibri, Helvetica, sans-serif, EmojiFont, "Apple Color Emoji", "Segoe UI Emoji", NotoColorEmoji, "Segoe UI Symbol", "Android Emoji", EmojiSymbols; font-size: 16px;"><br>
</span></span></p>
<p><span><span style="font-family: Calibri, Helvetica, sans-serif, EmojiFont, "Apple Color Emoji", "Segoe UI Emoji", NotoColorEmoji, "Segoe UI Symbol", "Android Emoji", EmojiSymbols; font-size: 16px;"></p>
<div>This would also require some changes to the Parser. If your examples compiles, I would also expect the following to run:</div>
<div><br>
</div>
<div>
<div>aNumber caseOf: {<br>
   #even -> ['That is an even number.'].<br>
   #odd -> ['That is an odd number.'].<br>
}.<br>
</div>
</div>
<div><br>
</div>
<div>Best,</div>
<div>Christoph</div>
</span></span>
<p></p>
<div id="Signature">
<div name="divtagdefaultwrapper" style="font-family:Calibri,Arial,Helvetica,sans-serif; font-size:; margin:0">
<div><font size="2" color="#808080"></font></div>
</div>
</div>
</div>
<hr style="display:inline-block;width:98%" tabindex="-1">
<div id="divRplyFwdMsg" dir="ltr"><font face="Calibri, sans-serif" style="font-size:11pt" color="#000000"><b>Von:</b> Squeak-dev <squeak-dev-bounces@lists.squeakfoundation.org> im Auftrag von Taeumel, Marcel<br>
<b>Gesendet:</b> Donnerstag, 15. August 2019 10:32:07<br>
<b>An:</b> gettimothy via Squeak-dev<br>
<b>Betreff:</b> [squeak-dev] Question about #caseOf:otherwise:</font>
<div> </div>
</div>
<div>
<div id="__MailbirdStyleContent" style="font-size: 10pt;font-family: Arial;color: #000000">
Hi all!
<div class="mb_sig"></div>
<div><br>
</div>
<div>Why isn't the following example possible?</div>
<div><br>
</div>
<div>aNumber caseOf: {</div>
<div>   <b>[:n | n even]</b> -> ['That is an even number.'].</div>
<div>  <b> [:n | n odd]</b> -> ['That is an odd number.'].</div>
<div>}.</div>
<div><br>
</div>
<div>That is, why is the check "assoc key value = self" not configurable as "(x := assoc key cull: self) == true or: [x = self]"? :-)</div>
<div><br>
</div>
<div>... maybe it is a good thing that case-of statements in Smalltalk are not that powerful?</div>
<div><br>
</div>
<div>Best,</div>
<div>Marcel</div>
</div>
</div>
</body>
</html>