6 ms·
Smalltalk-78 Xerox NoteTaker in-browser emulator
- jll29 1y agoGoldberg (1984) Smalltalk-80: The Interactive Programming Environment http://stephane.ducasse.free.fr/FreeBooks/TheInteractiveProgrammingEnv/TheInteractiveProgrammingEnv.pdf http://stephane.ducasse.free.fr/FreeBooks/TheInteractiveProg... Goldberg & Robson (1983) Smalltalk-80: The Language and Its Implementataion http://stephane.ducasse.free.fr/FreeBooks/BlueBook/Bluebook.pdf http://stephane.ducasse.free.fr/FreeBooks/BlueBook/Bluebook....
- reconnecting 1y agoVery unexpected typeface for 1979 year. Thanks for sharing.
- trinix912 1y agoIt’s definitely very unique and proves that the Macintosh wasn’t the first computer with nice typography ;)
- y3ywuwuw 1y ago[flagged]
- y3ywuwuw 1y ago[flagged]
- Beijinger 1y ago"If you change the JavaScript code of the VM, it will immediately affect other users of this webpage. Please use responsibly." LOL
- xkriva11 1y agoA faster booting version (without Lively Kernel IDE): https://codefrau.github.io/Smalltalk78/ https://codefrau.github.io/Smalltalk78/
- xkriva11 1y agoA demonstration of on-the-fly modification of GUI internals in Smalltalk-78: https://www.youtube.com/watch?v=eEz08IlcNMg https://www.youtube.com/watch?v=eEz08IlcNMg
- rbanffy 1y agoI once crashed Squeak by telling it that true:=false
- Jtsummers 1y agoI 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."
- igouy 1y agoThe "couldn't possibly work" things seem different — they don't crash the VM and exit.
- deleted 1y ago[deleted]
- speedbird 1y agoObject become: nil -- pretty findamental rug pull
- deleted 1y ago[deleted]
- igouy 1y agoWhich 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
- rbanffy 1y agoI expected the Note Taker to have a much smaller screen. This is pretty unbelievable for a portable back then.
- pinewurst 1y agoIt had a 7 inch CRT with 640x480 resolution.
- rbanffy 1y agoThe emulator has a much higher resolution. Did it use a follow-the-mouse window?
- jecel 1y agoAs far as I know the Tektronix Smalltalk computers (4404 and later) were the only ones to try a higher resolution scrolling virtual screen. For Alan Kay's talk they removed some limits of the original hardware, like screen size, processor speed, memory limits and storage (floppies in the original). They found that without these limits the experience was actually better than more modern Smalltalks in some ways. Sort of like using a 1980s 8 bit microcomputer with a modern SD card.
- codefrau 1y agoYou can run the emulator with a different screen size: https://codefrau.github.io/Smalltalk78/?width=640&height=480 https://codefrau.github.io/Smalltalk78/?width=640&height=480 There’s also an Alto mode https://codefrau.github.io/Smalltalk78/?alto https://codefrau.github.io/Smalltalk78/?alto which is closer to what folks used to work with back then
- sannysanoff 1y agoI was always amazed that the smalltalk environment looks like a complete computer control - a paradise for a programmer and a hacker, and a creator. It's surprising that it didn't take off. Probably too much openness reflects the internal openness of the smalltalk creator to the world, but the outside world, unfortunately, did not reciprocate. Especially if we pay attention to Apple's success with completely closed devices, suitable only for content consumption.
- badc0ffee 1y agoSuitable only for content consumption - only if you define content narrowly as software/apps.
- criddell 1y agoAnd when you use that narrow definition you have to remember that all those apps were made on Apple devices. A broader definition of content would include things you read, listen to, or watch and lots of writers, musicians, and film makers do a lot of their work on Apple hardware. The suitable only for content consumption claim just doesn’t hold up.
- pjmlp 1y agoSmalltalk as platform did take off, that is why the famous GoF book uses Smalltalk and C++, even though many think Java is somehow on a book that predates it for about three years. All the IBM's Visual Age line of IDEs were written in Smalltalk, and in a way it was the ".NET" of OS/2. SOM (OS/2 COM) supported it natively, and one biggest difference to COM is that it supports meta-classes and proper inheritance, language agnostic. What made Smalltalk lose industry mindshare was exactly Java. When it came out, some major vendors, like IBM, pivoted all the way into Java, leaving Smalltalk behind. It is no accident that Eclipse was designed by some of the GoF authors, and it is initially a rewrite of Visual Age underlying platform from Smalltalk to Java. Eclipse even to this day has a Smalltalk like code browser. It wasn't only the IDEs, some famous Java libraries, like JUnit, started their life as Smalltalk libraries. Now as full OS, yes that never really took off. Note not all Smalltalk vendors switched to Java, that is why Dolphin and Cincom Smalltalk are still around.
- smartmic 1y agoA cute and up-to-date version of Smalltalk is Cuis [1]. I enjoyed playing around with it and developing small projects, but I will never get used to using a graphical VM and UI to develop ordinary programs. That's too far from the UNIX philosophy, which I respect and follow for good reason. Nevertheless, the curious hacker in me is attracted to the freshness and unconventionalness of Smalltalk as a unique programming experience. [1] https://cuis.st/ https://cuis.st/
- linguae 1y agoYou might be interested in this paper: "Unix, Plan 9 and the Lurking Smalltalk" (https://www.humprog.org/~stephen/research/papers/kell19unix-personal.pdf https://www.humprog.org/~stephen/research/papers/kell19unix-...) Cuis Smalltalk and related implementations are rather self-contained systems to the point they seemed walled off from the rest of the system, making it difficult to develop Smalltalk programs using external tools. However, there's something compelling about the idea of a Smalltalk (or Lisp) OS running on bare hardware, where everything runs in a single address space. I've been thinking about this for a few years, but I haven't had time to pursue these ideas. Some ideas from the 1994 paper "Sharing and Protection in a Single-Address-Space Operating System" (https://homes.cs.washington.edu/~levy/opal.pdf https://homes.cs.washington.edu/~levy/opal.pdf) could be applicable to add some security to a Smalltalk OS.
- pjmlp 1y agoHence why I am already happy with half filled cup, when considering the existence of platforms like ChromeOS, Android, Meadow, Micro/CircuitPython, or Inferno, that seldom gets love from Plan 9 folks. It isn't the full thing, but apparently it is very hard to get mainstream interest in such approaches. Naturally this is not the same as using Smalltalk, or the other three Xerox PARC siblings, only partially. There were some efforts to run Squeak on the Raspberry PI I think, but eventually they runned out of steam. https://hackaday.com/2020/07/12/making-smalltalk-on-a-raspberry-pi/ https://hackaday.com/2020/07/12/making-smalltalk-on-a-raspbe...
- 1y ago
- aperrien 1y agoIs it possible to download this for offline use? Or to view the source code for it?
- self 1y agoYou can run Smalltalk78 locally by cloning (or downloading) https://github.com/codefrau/Smalltalk78 https://github.com/codefrau/Smalltalk78 Any web server that serves static files will do (like "python3 -m http.server"). To use the full Lively interface, start here: https://www.lively-kernel.org/development/ https://www.lively-kernel.org/development/
- znpy 1y agoI looked left and right but it doesn't say anywhere what software is it using to run a smalltalk environment in the browser. I played with (Pharo) Smalltalk a bit in the past, it'd be nice to try it again in the browser.
- igouy 1y agoPerhaps Lively Kernel? https://www.lively-kernel.org/presentations/ https://www.lively-kernel.org/presentations/
- codefrau 1y agoThis is using my Smalltalk-78 Virtual Machine https://github.com/codefrau/Smalltalk78 https://github.com/codefrau/Smalltalk78 For a more modern Smalltalk in the browser you can try SqueakJS https://squeak.js.org/ https://squeak.js.org/
- musicale 1y agoThe whole Smalltalk zoo is interesting: https://smalltalkzoo.thechm.org https://smalltalkzoo.thechm.org
- dominicrose 1y agoWhat I liked about Smalltalk is the IDE and the language so I had two ideas. Use Ruby instead, which is similar but with a more expressive syntax. The IDE shouldn't save the code in a DB but as regular Ruby files (1 class per file) but the programmer would still only see one method implementation at a time in the IDE.