Hacker News new | ask | show | jobs
by xkriva11 398 days ago
A demonstration of on-the-fly modification of GUI internals in Smalltalk-78: https://www.youtube.com/watch?v=eEz08IlcNMg
2 comments

My first encounter with ST was at a Macintosh event at college in ‘85.

And there was a fellow there with a Mac Plus, and he had the Apple ST image running on it.

The Apple ST image was a descendant of the original Xerox image. This is the same image that became Squeak. Quite the heritage.

The first the the guy showed me was how easy it was to change the width of the scroll bar. A simple tweak and, voila, the scroll bar changed. This worked particularly well because in the original UI, the scroll bar was a popup (unlike most are today).

It was a dynamic demo to be sure to get that kind of reactivity to development. Made an impression to be sure.

You confused me with "ST" here. I thought you meant the computer called the ST, that could run an Apple OS image.

https://en.wikipedia.org/wiki/Atari_ST

I once crashed Squeak by telling it that true:=false
I think that or something like it was a rite of passage in our course using Smalltalk in college (number forgotten). "That couldn't possibly work...Oh, shit."
The "couldn't possibly work" things seem different — they don't crash the VM and exit.
Seems like Cuis Smalltalk also has that crash & exit behavior.

That does not crash Pharo Smalltalk.

That does not crash Dolphin Smalltalk.

At that time it didn’t exit - it just hung there forever. Even the mouse wouldn’t move.
Today after re-install on MSWin10

    true := false
Cuis is perfectly OK

    Cannot store into ->
Object become: nil -- pretty findamental rug pull
Which could be handled without crash & exit behavior.

That does not crash Pharo Smalltalk.

That does not crash Dolphin Smalltalk.

    Object class(Object)>>error:
    Object class(Object)>>primitiveFailed
    Object class(Object)>>become:
    UndefinedObject>>{unbound}doIt
Every time a young hacker finds one of these, it gets patched.
Today after re-install on MSWin10

    Object become: nil
Cuis does crash & exit, or hangs, or …

    Sorry but the Squeak VM has crashed.
    …
    crash.dmp