Live data from Hacker News

Squeak 6.1

squeak.org

31–40 of 152 posts

Re: Squeak 6.1

#31
post #2

Just like learning Lisp will make you rethink programming languages, and learning Erlang will make you understand the true power of concurrency: learning Smalltalk will make you understand what "object oriented" actually means. I haven't used Squeak since college but I'm glad it was part of the cirriculum. Btw, almost all of Javascript's good parts come from Smalltalk.

The main thing you’ll learn is that actually the static and inflexible abstractions of an operating system do a lot to protect the system integrity and prevent everything from blowing up. Many smalltalk VMs rely on recovery features for a reason

recovery features? how do they work? and what smalltalk runtime do you have in mind? I still have a very vague understanding on how changes could be applied to a production running images, or if there is one and preferable way to do that.

Re: Squeak 6.1

#32

Earlier quoted context omitted.

Lisp, Forth, Erlang, Smalltalk, and Rebol, so easily forgotten. All languages that multiply your insight into the nature of computer programming. A bit sad that many just stop at the first of these, and many more don’t even venture past their Pythons and Javascripts.

I find that lamentation a bit funny, because the list in practice is never really complete. For instance, you forgot the mighty Prolog. Surely, tcl belongs on there too.

Also SNOBOL/Icon.

Re: Squeak 6.1

#33
post #4
post #2

Just like learning Lisp will make you rethink programming languages, and learning Erlang will make you understand the true power of concurrency: learning Smalltalk will make you understand what "object oriented" actually means. I haven't used Squeak since college but I'm glad it was part of the cirriculum. Btw, almost all of Javascript's good parts come from Smalltalk.

>Btw, almost all of Javascript's good parts come from Smalltalk. Like what, exactly? I'm genuinely curious. There is no root object or message passing in JS, and the OO aspects are only incidentally bolted on (classes don't actually exist, prototypal inheritance was an afterthought), named params are newer sugar, and polymorphism is a struggle due to all of the above. I've always thought of JS as what Crockford himse…

I agree, but JS has evolved so far, that when using TypeScript, you can mostly ignore the underlying mismatch.

Re: Squeak 6.1

#34
post #16
post #2

Just like learning Lisp will make you rethink programming languages, and learning Erlang will make you understand the true power of concurrency: learning Smalltalk will make you understand what "object oriented" actually means. I haven't used Squeak since college but I'm glad it was part of the cirriculum. Btw, almost all of Javascript's good parts come from Smalltalk.

For me, Smalltalk's "wow" moment was the concept of a persistently running image, with the developer's job being to mould and manipulate it into the shape s/he wants.

There are Lisps with similar semantics. It faded (further) out of popularity for a number of reasons, but it still has its niche.

Re: Squeak 6.1

#35
post #19

Earlier quoted context omitted.

Lisp, Forth, Erlang, Smalltalk, and Rebol, so easily forgotten. All languages that multiply your insight into the nature of computer programming. A bit sad that many just stop at the first of these, and many more don’t even venture past their Pythons and Javascripts.

Wouldn't you just do elixir now? It's like erlang but even wilder. I think smalltalk and erlang are so interesting because they model the idea of small computers so differently. Lisp just feels like the purest way to understand what the units of a programming language really is.

From what I've seen... I think if I were writing business applications, I'd reach for Elixir... if I were writing something lower level like communication software, I'd reach for Erlang.

I have written a fair amount of Elixir (and targeting business applications) and I think Elixir's expressiveness lends itself well to making more abstract models of the business processes and data seen in solving business problems. However, writing Elixir I find you end up reading a lot of Erlang and in certain problem spaces I could imagine the appeal over Elixir. I could absolutely see where if I were writing more technically oriented programs.... programs closer to the hardware in some ways or programs designed to communicate with other programs (protocols, etc.) I could see Erlang as being a more clear and direct language in these circumstances.

All of this is very hand-wavy, but it's my impression.

Re: Squeak 6.1

#36
post #16

Earlier quoted context omitted.

For me, Smalltalk's "wow" moment was the concept of a persistently running image, with the developer's job being to mould and manipulate it into the shape s/he wants.

There are Lisps with similar semantics. It faded (further) out of popularity for a number of reasons, but it still has its niche.

Which Lisps were those? I'm kinda interested in this space.

Re: Squeak 6.1

#37
post #15

How does this compare to Glamorous Toolkit[1]? [1] https://gtoolkit.com/

Glamorous Toolkit is built on Pharo, which I think is a fork of Squeak or shares lineage with it.

Re: Squeak 6.1

#38
one thing I love about Smalltalk is being able to inspect the code as it's running. Especially from the GUI. You can just be like Oh I wonder where the code for this button is from, inspect it, and it takes you right to the code. It's a shame we can't have this level of introspection without negative performance implications.

Re: Squeak 6.1

#39
I just downloaded on Windows 11. My antivirus (Symantec Endpoint Protection) did not like it and erased the executable. I reinstalled and got it working.

Question? Does this work with Etoys? If so, how? I tried following various directions online without success. Thanks!

Re: Squeak 6.1

#40

Earlier quoted context omitted.

There are Lisps with similar semantics. It faded (further) out of popularity for a number of reasons, but it still has its niche.

Which Lisps were those? I'm kinda interested in this space.

All Common Lisps can do that, though it is not a part of the standard. See e.g. (sb-ext:save-lisp-and-die)
Post reply on HN