<div id="__MailbirdStyleContent" style="font-size: 10pt;font-family: Arial;color: #000000;text-align: left" dir="ltr">
                                        Hi Stef.<div><br></div><div>> <span style="font-family: Arial, Helvetica, sans-serif;font-size: 13px">Real pedagogical value comes from explaining complex topics clearly, not </span><span style="font-family: Arial, Helvetica, sans-serif;font-size: 13px">from simplifying them.</span></div><div><span style="font-family: Arial, Helvetica, sans-serif;font-size: 13px"><br></span></div><div><span style="font-family: Arial, Helvetica, sans-serif;font-size: 13px">Slightly disagree in this context. If you sacrifice readable abstraction (or modularity or information hiding in that sense) for performance, code comments can only try to alleviate the actual issue. First and foremost, source code should be written for humans, not machines, to understand. Otherwise systems with a lot of inherent complexity would be very challenging -- if not impossible -- to build and maintain.</span></div><div><span style="font-family: Arial, Helvetica, sans-serif;font-size: 13px"><br></span></div><div><span style="font-family: Arial, Helvetica, sans-serif;font-size: 13px">We should be very careful with every low-level detail we burden the high-level programmer with. I find the phrase "[...] </span><span style="font-family: Arial, Helvetica, sans-serif;font-size: 13px">problems that users will have to learn sooner or later [...]" very problematic in the sense that it seems to "just give up" on readable, high-level abstractions altogether. Of course, one should not be too naive about this. </span></div><div><span style="font-family: Arial, Helvetica, sans-serif;font-size: 13px"><br></span></div><div><span style="font-family: Arial, Helvetica, sans-serif;font-size: 13px">Still, we can do better that comments. And we still need more bytecodes/sec and sends/sec. :-D</span></div><div><span style="font-family: Arial, Helvetica, sans-serif;font-size: 13px"><br></span></div><div><span style="font-family: Arial, Helvetica, sans-serif;font-size: 13px">Best,</span><br></div><div><span style="font-family: Arial, Helvetica, sans-serif;font-size: 13px">Marcel</span></div><div class="mb_sig"></div>
                                        <blockquote class="history_container" type="cite" style="border-left-style: solid;border-width: 1px;margin-top: 20px;margin-left: 0px;padding-left: 10px;min-width: 500px">
                        <p style="color: #AAAAAA; margin-top: 10px;">Am 22.02.2021 16:36:31 schrieb Stéphane Rollandin <lecteur@zogotounga.net>:</p><div style="font-family:Arial,Helvetica,sans-serif">>    Eliminating all the intermediate objects gives much less expressive<br>> code as Tom underlined<br>>    But providing only naive implementations hides the performance<br>> problems that users will have to learn sooner or later...<br><br>Exactly.<br><br>And code expressivity is a dubious criterion IMO: especially in <br>Smalltalk, the readability of a specific algorithm can be improved by <br>refactoring/renaming its primitive methods, or more simply by commenting <br>the non-obvious parts.<br><br>Real pedagogical value comes from explaining complex topics clearly, not <br>from simplifying them.<br><br>Stef<br><br></div></blockquote></div>