<html><head><style id="css_styles" type="text/css"><!--blockquote.cite { margin-left: 5px; margin-right: 0px; padding-left: 10px; padding-right:0px; border-left: 1px solid #cccccc }
blockquote.cite2 {margin-left: 5px; margin-right: 0px; padding-left: 10px; padding-right:0px; border-left: 1px solid #cccccc; margin-top: 3px; padding-top: 0px; }
a img { border: 0px; }
table { border-collapse: collapse; }
li[style='text-align: center;'], li[style='text-align: center; '], li[style='text-align: right;'], li[style='text-align: right; '] {  list-style-position: inside;}
body { font-family: 'Segoe UI'; font-size: 12pt; }
.quote { margin-left: 1em; margin-right: 1em; border-left: 5px #ebebeb solid; padding-left: 0.3em; }
--></style></head><body><div>Hi Dave, Ken, Joseph,</div><div><br /></div><div>many thanks for your input. I'm a big fan so I'm not trying to argue against here, instead I'm trying to understand more thoroughly. Is there really a substantial difference between Smalltalk and, say Javascript / Python etc., and where? Surely liveness and access to reflection in Smalltalk is a huge plus. Debugging is a joy. Writing the code is enjoyable but not an order of magnitude away from the others. Learning Smalltalk has been a challenge though... and no, I'm not coming from C or Python etc :)</div>
<div style="clear:both"><br /></div><div style="clear:both">>> [Ken] <span>I think of the development of Entity-Relation databases plus Ontology plus simulation plus human/computer interaction, all of which was happening at this time.  Smalltalk-80 is a well-grounded simplification which works.</span></div><div style="clear:both"><br /></div><div style="clear:both">Yes, this sums it up nicely, thanks</div><div style="clear:both"><br /></div><div style="clear:both">>> [Dave] It really is more than just a programming language. It is an environment that lets you create objects to represent concepts, experiment with your ideas, and to document your understanding both with comments and with executable examples. In this way, Smalltalk is more about communicating knowledge rather than code and data.</div><div style="clear:both"><br /></div><div style="clear:both">I've played a bit with Javascript and Python recently and my impression is they try to follow basically the same goal. Javascript creates objects very easily (I know it's the prototype based nature, but the idea is there). Of course, experimenting in Smalltalk is better. Big advantage of the other mentioned laguages though, is the huge knowledge base available online and also, IMHO the availability of github Copilot makes learning them way more effective and enjoyable than without the Copilot. </div><div style="clear:both"><br /></div><div style="clear:both">>> [Dave] <span style="font-family: Verdana, Geneva, sans-serif; font-size: 13.3333px;">It's just much more comfortable to do the thinking in Smalltalk.</span></div><div style="clear:both"><br /></div><div style="clear:both">Yes, I guess that sums it up nicely too :))</div><div style="clear:both"><br /></div><div style="clear:both"><br /></div><div style="clear:both">>> [Joseph] <span>I think another problem, is that for me at least, I come from trying to learn imperative programming languages, and expect to execute it via command line and get my output. This is not the case with smalltalk, and I have still not adjusted to it and done anything useful.</span></div><div style="clear:both"><span><br /></span></div><div style="clear:both"><span>Lucky me I decided to learn OOP via Smalltalk a few years ago :) Other OOP languages feel like "oh yeah, you do it this way, hmm, _interesting_" now :) But as I said above, it was hard at the beginning.</span></div><div style="clear:both"><br /></div><div style="clear:both"><br /></div><div style="clear:both">Again, thanks very much.</div><div style="clear:both">best,</div><div style="clear:both">Jaromir</div>
<div><br /></div>
<div>
<div>On 23-Jun-24 7:29:55 PM, "lewis--- via Cuis-dev" <<a href="mailto:cuis-dev@lists.cuis.st">cuis-dev@lists.cuis.st</a>> wrote:</div></div><div><br /></div>
<div id="xd61b7fe18526422" style=""><blockquote cite="0262b9ac79f2914bdbf202561e3d17c9@mail.msen.com" type="cite" class="cite2" style="font-family: Verdana, Geneva, sans-serif; font-size: 10pt;">

<p><br /></p>
<p id="reply-intro">On 2024-06-23 08:19, Jaromir Matas via Cuis-dev wrote:</p>
<blockquote type="cite" style="padding: 0 0.4em; border-left: #1010ff 2px solid; margin: 0" class="cite">
<div id="replybody1">
<style type="text/css"><!--#xd61b7fe18526422 #replybody1 blockquote.v1cite
{margin-left: 5px; margin-right: 0px; padding-left: 10px; padding-right: 0px; border-left: 1px solid rgb(204, 204, 204);}
#xd61b7fe18526422 #replybody1 blockquote.v1cite2
{margin-left: 5px; margin-right: 0px; padding-left: 10px; padding-right: 0px; border-left: 1px solid rgb(204, 204, 204); margin-top: 3px; padding-top: 0px;}
#xd61b7fe18526422 #replybody1 a img
{border: 0px;}
#xd61b7fe18526422 #replybody1 table
{border-collapse: collapse;}
#xd61b7fe18526422 #replybody1 li[style="'text-align: center;'"], #xd61b7fe18526422 #replybody1 li[style="'text-align: center; '"], #xd61b7fe18526422 #replybody1 li[style="'text-align: right;'"], #xd61b7fe18526422 #replybody1 li[style="'text-align: right; '"]
{list-style-position: inside;}
#xd61b7fe18526422 #replybody1
{font-family: "Segoe UI"; font-size: 12pt;}
#xd61b7fe18526422 #replybody1 .v1quote
{margin-left: 1em; margin-right: 1em; border-left: 5px solid rgb(235, 235, 235); padding-left: 0.3em;}
--></style>
<div>
<div> </div>
<div>
<div>On 22-Jun-24 4:01:06 AM, "lewis--- via Cuis-dev" <<a href="mailto:cuis-dev@lists.cuis.st" rel="noreferrer">cuis-dev@lists.cuis.st</a>> wrote:</div>
</div>
<div> </div>
<div id="v1x405daaafacbd4dc">
<blockquote class="v1cite2" style="font-family: Verdana, Geneva, sans-serif; font-size: 10pt;">
<p>This is a really good video conversation. </p>
</blockquote>
<div id="v1x405daaafacbd4dc"><span> </span></div>
<span style="font-family: Verdana, Geneva, sans-serif;"><span style="font-size: 13.3333px;">Great indeed!</span></span></div>
<div id="v1x405daaafacbd4dc"><span style="font-family: Verdana, Geneva, sans-serif;"><span style="font-size: 13.3333px;"><br /></span></span>
<blockquote class="v1cite2" style="font-family: Verdana, Geneva, sans-serif; font-size: 10pt;">
<p>Juan explains Smalltalk and Cuis from first principles, with historical context and highlighting perspectives</p>
</blockquote>
<div id="v1x405daaafacbd4dc"><span> </span></div>
<div id="v1x405daaafacbd4dc"><span>I'm not sure I understand the part about "knowledge" though: "Write, describe, communicate knowledge" - what does it mean exactly? Is it about Smalltalk as a language? The language itself is not that different from other (high-level) languages. A good language certainly is a great help to formulate things but it's still a "programming language". </span><span>I guess there more to it I didn't get :) </span></div>
</div>
</div>
</div>
</blockquote>
<div></div>
<div> </div>
<div> </div>
<div>It really is more than just a programming language. It is an environment that lets you create objects to represent concepts, experiment with your ideas, and to document your understanding both with comments and with executable examples. In this way, Smalltalk is more about communicating knowledge rather than code and data.</div>
<div> </div>
<div>In my own experience, I have used Smalltalk to figure out problems related to automotive assembly plants, even if the ideas later get written in other languages (Java, C, SQL). It's just much more comfortable to do the thinking in Smalltalk.</div>
<div> </div>
<div>Dave</div>
<div> </div></blockquote><font face="Verdana, Geneva, sans-serif"><span style="font-size: 13.3333px;"><br /></span></font><blockquote cite="0262b9ac79f2914bdbf202561e3d17c9@mail.msen.com" type="cite" class="cite2" style="font-family: Verdana, Geneva, sans-serif; font-size: 10pt;"><div><br /></div>
</blockquote></div>

</body></html>