14 ms·
Squeak: A modern, open-source Smalltalk environment
- mc4ndr3 5y agoRuby takes the best of Smalltalk and runs with it.
- coward123 5y agoRuby might superficially syntactically look like Smalltalk in a few places, but the actual semantics of the language and the overall toolset are nothing alike. Smalltalk was ahead of its time. The licensing and the hardware demands were too much of a burden, but the language and combined tooling solved many problems in elegant ways that today we attempt to solve with a big pile of stuff.
- musicale 5y agoIntegrating everything together into a complete operating environment was Smalltalk's (and Squeak's) greatest strength and greatest weakness. It's possible to extract the language from the environment but then you end up with something that isn't nearly as amazing. Something similar can probably be said for Oberon and for Lisp machines as well.
- isr 5y ago> Ruby might superficially syntactically look like Smalltalk in a few places, but the actual semantics of the language and the overall toolset are nothing alike. As someone who has used cuis smalltalk (a squeak fork), and ruby, quite extensively, I would disagree. Ruby takes its entire object model (and much of its dynamism) from smalltalk. Ruby is akin to taking one part lisp, one part smalltalk, and a dash of perl and shell, throwing it into a blender and cranking the power on.
- Tozen 5y agoI think others would argue that Erlang, outside of Smalltalk, came closest. Alan Kay has pretty much made public statements to that effect.
- coward123 5y agoMy son is learning Java and Python for a middle school class. I encouraged him to download Squeak and learn Smalltalk, as to my thinking a student is going to struggle to understand OOP if you jump into Java and Python. I know there are many OOP haters here on HN, but I'd encourage you to take a hard look at Smalltalk and consider how it approaches software engineering - it might convert you into a fan.
- MaxLeiter 5y agoIf your son likes Minecraft I got into programming by developing minecraft mods (java modifications to the game) as a middle schooler / freshmen. I’m always thankful for it when I think back.
- throwaway684936 5y agoSmalltalk OOP is totally different than the Java/Python/C++ creators' ideas of shoehorning OOP into descendants of C. I see value and have interest in one and despise the other.
- Tozen 5y agoI would argue that many don't hate OOP in general, but rather take issue with class-based OOP (https://en.wikipedia.org/wiki/Class-based_programming https://en.wikipedia.org/wiki/Class-based_programming) and the forcing of it as the default paradigm in various languages. There are other definitions as to what OOP is, and other paradigms that are useful. "I made up the term object-oriented, and I can tell you I did not have C++ in mind." --Alan Kay I'm quite sure that applies to Java's and Python's takes on it. Many disliked the years of pushing class-based OOP as if the only or best answer to any programming problem must be its usage, when clearly that's not the case. Which functional languages shows, and the programming world did fine before class-based OOP became popular, for the wrong reasons.
- Qem 5y agoPharo inherits much of its awesomeness. There's a MOOC for it. See https://mooc.pharo.org/ https://mooc.pharo.org/
- linguae 5y agoA part of me wonders how the history of personal computing would have played out had macOS or Windows been built on top of a Smalltalk VM. In some ways, NeXT was a "pragmatic Smalltalk" machine in the sense that it had a Smalltalk-inspired programming language (Objective-C) that was a superset of C, and had a rich object-oriented API that would later evolve into OpenStep and Cocoa. However, NeXT was Unix and C at its core, not Smalltalk; it didn't have all of the dynamic features that Smalltalk environments have. Even today I'd be highly interested in an operating system that has the dynamics and the inspection of Smalltalk and Lisp machines.
- pkphilip 5y agoIs it possible to use squeak for a typical enterprise software - accessing databases, with a strong authentication system, with CRUD screens, multi-user abilities etc?
- smackeyacky 5y agoAs an individual developer? Go for it. Working in a team? Forget it. Smalltalk still suffers from integration issues that were once solved by Envy/developer but the current Smalltalk community have collectively forgotten why it was important.
- pkphilip 5y agoThank you for the information