Live data from Hacker News

The Xerox Alto, Smalltalk, and Rewriting a Running GUI

righto.com

21–30 of 58 posts

Re: The Xerox Alto, Smalltalk, and Rewriting a Running GUI

#21
post #2

It's fascinating how the GUI's haven't changed much since. I run a UI design agency (we work mostly with startups) but would love to collaborate with someone who's working on a (niche?) OS and see if we can redesign the UI. Open Source is fine. If you're working on something, hit me up. Details in my bio :)

I think React Native / Expo can be an opportunity to do this on a touchable interface.

Here’s a thing: https://youtu.be/ZFdFyQBlXXU

You can eval JS there.

Re: The Xerox Alto, Smalltalk, and Rewriting a Running GUI

#22

An easy way to try ST-72 is in your browser here: https://lively-web.org/users/Dan/ALTO-Smalltalk-72.html and ST-78 here: https://lively-web.org/users/bert/Smalltalk-78.html The above links run emulators in Javascript and have been used for live demos as well (see https://youtu.be/AnrlSqtpOkw?t=2m29s for a fun one) Related, for a Javascript based live system check out https://www.lively-kernel.org/ (also created by D…

Thanks for posting the links. The Lively project evolved over time: - https://www.lively-kernel.org is from the Sun Labs / HPI days (check out the ancient http://sunlabs-kernel.lively-web.org , fully SVG based rendering :D) - Lively Web: https://lively-web.org A live, programmable wiki (2012-2015) - Since 2016 we are working on lively.next: https://lively-next.org . lively.next will focus more on the "personal enviro…

There also seems to be https://github.com/LivelyKernel/lively4-core

Re: The Xerox Alto, Smalltalk, and Rewriting a Running GUI

#23
> If you're used to Java or C++, this object-oriented code may look strange, especially since Smalltalk uses some strange characters. It's Smalltalk-76 that uses some strange characters.

The version that made it out of the lab into the wide-world was Smalltalk-80.

edited With help from Paolo Bonzini, Smalltalk-80 syntax for that square root code would be something more qwerty-friendly like:

    sqrt
       | guess |
       (self 
"I Can Read C++ and Java But I Can’t Read Smalltalk" pdf

http://carfield.com.hk/document/languages/readingSmalltalk.p...

Re: The Xerox Alto, Smalltalk, and Rewriting a Running GUI

#24
post #20
post #15

Smalltalk was the first dynamic UI environment but within a few years you could do this on lisp machines as well (both the Xerox D machines in either Smalltalk or Interlisp modes and MIT CADR lispms). Which is to say the Smalltalk environment was influential both at the time and later.

If you read the Xerox PARC papers, there was a lot of shared work between the Interlisp-D, Smalltalk and Mesa/Cedar teams. Actually some of the REPL and debugging features in Mesa/Cedar were done because they wanted to appeal to the Interlisp-D and Smalltalk users, while offering a strong type development environment.

Indeed I worked at PARC (at ISL, using Interlisp) and used all three platforms.

This article was about the '73 Alto implementation though, which preceded the D machines (and preceded my time at PARC by a decade as well). At that time Interlisp was PDP-10 only and had no GUI.

Re: The Xerox Alto, Smalltalk, and Rewriting a Running GUI

#25
post #23

> If you're used to Java or C++, this object-oriented code may look strange, especially since Smalltalk uses some strange characters. It's Smalltalk-76 that uses some strange characters. The version that made it out of the lab into the wide-world was Smalltalk-80. edited With help from Paolo Bonzini, Smalltalk-80 syntax for that square root code would be something more qwerty-friendly like: sqrt | guess | (self "I Ca…

From your link:

Finally, let’s insist that the separators be part of the method name; i.e., let’s require that the name of the method be “rotate by: around:” and let’s get rid of the spaces to get “rotateby:around:” as the name and finally, let’s capitalize internal words just for readability to get “rotateBy:around:”. Then our example could be written

rotateBy: a around: v //This is Smalltalk

This is also what Objective-C / Apple does.

Re: The Xerox Alto, Smalltalk, and Rewriting a Running GUI

#26
> Smalltalk-80 in turn led to modern Smalltalk systems such as… Such as:

- the direct commercialization of that work (by Xerox PARC spin-off ParcPlace Systems) as ObjectWorks and then VisualWorks (now Cincom Smalltalk)

- IBM Smalltalk on mainframe and mini computers http://www-01.ibm.com/support/docview.wss?uid=swg27000344&ai...

- HP Distributed Smalltalk http://www.hpl.hp.com/hpjournal/95apr/apr95a11.pdf

- Gemstone https://gemtalksystems.com/

Re: The Xerox Alto, Smalltalk, and Rewriting a Running GUI

#27
post #7

Earlier quoted context omitted.

I imagine the big issue is that the underlying model isn't actually being changed to support the new UI (even by a wrapper-layer); so you're just doing shallow edits to the "skin" of the OS. The problem being the underlying model and the WIMP model have been co-evolving, and likely aren't very open to other fashions of interaction. Presumably, the way to beat it out is to figure out how to change both to instantiate…

The big incoming UI challenge is XR. But as with ST/Alto, it's an integrated bootstrap problem of hardware, system design, foundational software, user software, and UI. Absent research labs, we wait on market availability for hardware. For the modern analogues of mice and bitmapped screens. Eye tracking may be cheap next year, but now it's $2k. High-resolution HMDs may be $10k next year, but now they're simply unavai…

The eleVR people have some interesting demos in this regard, where you program from inside the VR system. That might be the best way to try things out and conduct the "foundational work"

Re: The Xerox Alto, Smalltalk, and Rewriting a Running GUI

#28
post #6

Earlier quoted context omitted.

You can redesign the UI using Canvas, no need to do it at the OS level. It is hard to get past the standard WIMP GUI though, naturalistic UIs (NUIs) were tried a decade ago, but they were found to not actually be more usable.

I’ve been following OS UI experiments for some years and the problem with all of them was that they took an approach that sounded cool but wasn’t really practical. From 3D desktops to strange card based interfaces that wanted to replicate the messy physical desk. I think the key is to redesign the GUI by removing stuff instead of adding fancy new ways of shuffling files.

This is what killed Microsoft Surface the Table; the NUIs could never demonstrate their worth beyond whimsy. Metro seemed to actually be a reset with all the NUI stuff thrown out.

Re: The Xerox Alto, Smalltalk, and Rewriting a Running GUI

#29
post #7

Earlier quoted context omitted.

I imagine the big issue is that the underlying model isn't actually being changed to support the new UI (even by a wrapper-layer); so you're just doing shallow edits to the "skin" of the OS. The problem being the underlying model and the WIMP model have been co-evolving, and likely aren't very open to other fashions of interaction. Presumably, the way to beat it out is to figure out how to change both to instantiate…

The big incoming UI challenge is XR. But as with ST/Alto, it's an integrated bootstrap problem of hardware, system design, foundational software, user software, and UI. Absent research labs, we wait on market availability for hardware. For the modern analogues of mice and bitmapped screens. Eye tracking may be cheap next year, but now it's $2k. High-resolution HMDs may be $10k next year, but now they're simply unavai…

VR has a huge input problem, you can't touch any of the 3D stuff, you are basically left waving hands in the air. Bret Victor's lab is going in the other direction of tangible objects with digital projections.

Re: The Xerox Alto, Smalltalk, and Rewriting a Running GUI

#30
post #12

It's amazing to see how little the concepts have changed in desktop world since Xerox Alto. The only different concept I saw few years back was by 10gui http://10gui.com/ with VR, MR, and AR coming in we need such innovation again.

I had some reservations at first, but that actually seems incredibly useful. I'd love to be able try it.

Yeah, worth watching the video. The music accompaniment was terrible and louder than it should be, but the concept is nice.

In the end of the video, they show it where the trackpad would be, which makes me think there might be a size issue. They also show it with a regular keyboard and I'm not sure everyone would require one. I do know that people like tactile keyboards but some folks have managed to function without one. So, a model where the touchpad is also the keyboard might be cool.

I touch-type, but maybe the trackpad could also be some sort of secondary display? I could see that coming in handy, perhaps even to display the above mentioned keyboard for this who can't touch-type.

Off-topic: HN is one of the few sites where I regularly click on links in the comments. On most sites, that's not a very productive activity. On HN, it is often interesting and educational.

Post reply on HN