[Cuis-dev] new YouTube video on Cuis Smalltalk

Jaromir Matas mail at jaromir.net
Sun Jun 23 14:54:58 PDT 2024


Hi Dave, Ken, Joseph,

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 :)

 >> [Ken] 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.

Yes, this sums it up nicely, thanks

 >> [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.

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.

 >> [Dave] It's just much more comfortable to do the thinking in 
Smalltalk.

Yes, I guess that sums it up nicely too :))


 >> [Joseph] 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.

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.


Again, thanks very much.
best,
Jaromir

On 23-Jun-24 7:29:55 PM, "lewis--- via Cuis-dev" 
<cuis-dev at lists.cuis.st> wrote:

>
>
>On 2024-06-23 08:19, Jaromir Matas via Cuis-dev wrote:
>
>>
>>On 22-Jun-24 4:01:06 AM, "lewis--- via Cuis-dev" 
>><cuis-dev at lists.cuis.st> wrote:
>>
>>>This is a really good video conversation.
>>>
>>
>>Great indeed!
>>
>>>Juan explains Smalltalk and Cuis from first principles, with 
>>>historical context and highlighting perspectives
>>>
>>
>>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". I guess there more to it I didn't get :)
>
>
>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.
>
>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.
>
>Dave
>

>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.cuis.st/mailman/archives/cuis-dev/attachments/20240623/9cc90db7/attachment.htm>


More information about the Cuis-dev mailing list