Squeak 6.1
Squeak 6.1, a modern Smalltalk environment, is prompting renewed interest in image-based, highly introspective programming systems where code, tools, and UI all live inside a persistent object world. Commenters highlight Smalltalk’s historical influence on languages like JavaScript and Ruby, its distinctive approach to objects, GUIs (via Morphic), and live debugging, while also noting practical hurdles such as dated UI aesthetics and high-DPI support. The thread branches into comparisons with Pharo, Glamorous Toolkit, Cuis, and even Erlang-style actor models, underscoring how these ideas continue to shape thinking about concurrency, persistence, and developer experience.
Smalltalk’s Conceptual Impact
- Many see learning Smalltalk as transformative, similar to Lisp or Erlang, for understanding “real” OO as message passing and objects all the way down.
- Some describe a “wow” moment from the live, persistent image model: you mold a running system instead of repeatedly restarting programs.
- Others argue that OS-level abstractions and static systems still provide crucial protection; Smalltalk VMs often need recovery mechanisms.
Image-Based Systems & Persistence
- Several languages/environments are noted as having image-based or similar semantics: Common Lisp, Scheme variants, GNU Emacs, R, LambdaMOO-style systems, NixOS (with debate over analogy), and object databases like GemStone/S.
- Ideas explored include: persistent, memory-mapped images; content-addressed images with git-style hashing and deltas; transparent proxies that lazily load persisted objects.
- Some see this model as highly relevant today for versioning, agents, and reducing manual serialization; others highlight complexity and ecosystem friction.
Morphic, UIs, and Tooling
- Morphic’s architecture is discussed via roots in Self, the Squeak port, and JavaScript implementations (Lively Kernel, morphic.js, Snap!). Links and docs are shared for deeper study.
- Cuis Smalltalk is praised for a simplified, vector-based Morphic with full high-DPI support and highly interactive UI manipulation.
- Squeak’s UI elicits mixed reactions: powerful introspection and liveness vs. feeling “stuck in the 90s,” especially on modern high-DPI displays. Squeak 6.1 is said to improve high-DPI, but some still find gaps; alternatives like Pharo/Glamorous Toolkit and SqueakJS are mentioned.
JavaScript, Other Languages, and Influences
- One claim: many of JavaScript’s “good parts” come from Smalltalk. Others push back, citing Self’s influence on prototypes and Scheme’s influence on JS, and noting JS lacks a true Smalltalk-style root object or pure message passing.
- Discussion branches into Lisp, Prolog, Forth, Erlang, Elixir, Gleam, Ruby, and typeful languages like TypeScript, with the theme that learning multiple paradigms broadens understanding.
- Some foresee AI reducing coding “fun,” while others argue good languages, tooling, and human-readable code will matter even more in an AI-assisted future.
Practical Issues and Support
- High-DPI support is a recurring pain point; Squeak and Pharo are seen as improving but not fully there, while Cuis and Glamorous Toolkit are proposed as better on modern displays.
- Questions arise about Etoys compatibility with new Squeak versions; workarounds involve older images and SqueakJS.