Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

The Xerox papers on digital archive, I can try to hunt them down, see for example the one on XDE Tajo experience for Mesa.
 help



MPS/MPL began in 1971; the Mesa name was adopted in June 1974; an Alto cross-compiler worked in spring 1975. Cedar is both a language (an extension of Mesa, e.g. by a GC, but the OO features proposed by Lampson were never implemented to my knowledge) and a development environment. I assume your claim is about the latter. The programming language doesn't have anything in common with Smalltalk, and the fundamental work even predated the latter.

Yes my claim is about the IDE experience shared across all Xerox PARC environments, and how it affected the design of each language individually.

I will hunt down the papers.


We should not forget that the original Alto operating system(s) had a GUI already and was the basis of well known applications like Bravo or Gypsy; the original OS and the said applications were implemente in BCPL; and all were operational before Smalltalk-76. By Wirth's first PARC visit in 1976–77, Mesa had already become a self-hosting systems-development tool (small operating system and symbolic debugger); I'm not aware of any substantial Smalltalk influence at that time.

> I'm not aware of any substantial Smalltalk influence at that time.

You should be, because I spent hours telling you about it, in detail, with citations and extensive quotes from the designers of the Alto and Bravo, less than two weeks ago. At the time you conceded the point and said it was not what you intended to dispute: https://news.ycombinator.com/item?id=49857855


> I spent hours telling you about it

I hope not.

And please note that this is again a different topic.

Last time I was talking about Wirth's OO vs. Simula OO, and the similarity of Wirth's implementation with Kay's vision. You then first extended this discussion to whether Kay directly influenced Wirth, which I responded. Then you extended the topic even more to the question whether and to what degree Cedar was influenced by Smalltalk. That was far off my interest and irrelevant for the discussion given that Wirth just took the tiling window manager, which none of the Smalltalk versions had.

Now I'm talking about the development of the Alto computer which included an OS with a GUI and two groundbreaking applications, Bravo and Gypsy (implemented on top of Bravo), all in BCPL, implementing their own interaction and presentation concepts.

If you want to do historical research, you have to go to the primary sources (e.g. https://www.mirrorservice.org/sites/www.bitsavers.org/pdf/xe..., https://xeroxparcarchive.computerhistory.org/Xerox_PARC_sour..., or e.g. https://archive.org/details/Xerox_PARC_Gypsy_Demonstration_T...), not to stories written down from memory twenty years later.


The reason the Alto included a GUI at all was specifically Alan Kay's vision, as explained in the text I quoted by the people who built it. That text includes primary sources written at the time by, among other people, Cedar's main author and Bravo's main author — not only, as you imply, stories written down from memory twenty years later. It also includes primary sources from many years later, but those add to the evidence; they do not subtract from it.

I do not believe that Wirth's "OO" is a different topic. To the best of my understanding, the reason he added procedure-typed record fields in Modula-2 and retained them in Oberon was specifically in order to implement that tiling window manager, which in later versions of Mesa (and Cedar) replaced the overlapping-window GUI in earlier versions of Mesa, which came from Alan Kay's 01969 doctoral dissertation, by way of Smalltalk.


Rochus has posted a response saying:

> Kay's 1969 thesis has no overlapping windows; its "windows" are Sutherland–Sproull clipping viewports into a vector-display virtual screen ("the terminology follows [A Clipping Divider, 1968]", p. 40); nothing occludes or moves. Overlapping bitmap windows first appear in Smalltalk-72 on the Alto (1973–74), implemented by Ingalls. Tiling did neither come from Mesa nor from Kay; multiple tiled windows were on screen in Engelbart's NLS in 1968 (Engelbart & English, FJCC 1968, and the demo), carried into PARC by his former team (English, Irby), and are the stated model for the Mesa debugger. Procedure types in Modula-2 (1977–80, for Lilith) were taken from Mesa after Wirth's 1976–77 PARC stay, years before Cedar's tiled Viewers (1982), which Wirth saw in 1984–85.

Unfortunately, and horrifyingly, this response is [dead].

I agree with some things in it, but not others, and I will have to write a longer response later.


> Unfortunately, and horrifyingly, this response is [dead].

That's strange. I didn't do anything and it still appears on the site in my browser. Did they add "shadow bans" to HN? That was one reason for me to turn my back on Facebook (and the fact that interesting discussions suddenly disappeared later on). I took me more than half an hour to re-check all sources; I (we) probably shouldn't spend that much time on comments anymore.


There are shadowbans on HN, but you are not shadowbanned. Some assholes just flagged your comment, that's all. I appreciate the comment, and will respond to it in due course — I don't want to depend on my own memories here, but also to re-check the sources myself.

Were you two having a discussion about extensible programming languages, or an extensible discussion about programming languages? Or was it an extensible discussion about extensible programming languages after all? Maybe it all boils down to whether discussions about programming languages should use static or late binding?

Here is one such paper,

https://www.lri.fr/~mbl/ENS/FundHCI/2013/papers/XeroxStar-Co...

A few quotes from it,

> SunView is an example of a window system that is based upon the Tools metaphor rather than the Desktop metaphor. Its users see a collection of application program windows, each of which is used to edit certain files. Smalltalk-80, Cedar, and various Lisp environments also use the Tools metaphor rather than the Desktop metaphor

> The Reactive Engine -- While Engelbart et al were developing ideas, some of which eventually found their way into Star, Alan Kay, then a graduate student, was doing likewise. His dissertation, The Reactive Engine, contained seeds of many ideas that he and others later brought to fruition in the Smalltalk language and programming environment, which, in turn, influenced Star.

> Most importantly for Star, they demonstrated the power of graphical, bitmapped displays, mouse-driven input, windows, and simultaneous applications. This is the most visible link between Smalltalk and Star, and is perhaps why many people wrongly believe that Star was written in Smalltalk.

> Even though the machine was designed to run Star, it also ran other software. In addition to selling it as the 8010 "Star" workstation, Xerox sold it as a server machine and as an Interlisp and a Smalltalk workstation.

From this other one, some quotes as well,

"The Mesa Programming Environment"

https://dl.acm.org/doi/pdf/10.1145/17919.806843

> Client programs can attach additional information to windows by means of named contexts, similar to property lists of LISP. Tools can be written to have multiple instances, obtaining their data from the context associated with the particular window that Tajo is notifying (passed as a parameter to the notify procedure).

> The debugger had multiple windows patterned after those of Smalltalk [Kay76]. One, a typescript window, was used for interaction with the debugger executive for setting breakpoints, examining data, etc., and another was used to show the source context at breakpoints.

There are a few others with similar one off sentences like these, telling how designers from one system got influenced by the other, while at Xerox PARC.


Thanks. Your quotes are not about the Alto system software. The Star paper is about Star (1981) and itself warns that people "wrongly believe that Star was written in Smalltalk"; your first Sweet quote credits Tajo's window contexts to Lisp property lists, not Smalltalk.

The Alto OS, Bravo (1974) and Gypsy (1975) were written in BCPL by CSL/POLOS people (Lampson, Sproull, Simonyi, Tesler, Mott); the June 1975 Alto OS manual and Alto Packages contain nothing from Smalltalk, and they had no overlapping windows or pop-up menus.

Mesa the language (MPS 1971, named 1974, self-hosting 1976) owes nothing to Smalltalk either. Sweet's "patterned after those of Smalltalk [Kay76]" refers to the Dec 1976 Mesa 1.0 debugger's optional, "experimental" window manager. It never touched compiler, binder or OS and was dropped/replaced in Mesa 4.0.

Smalltalk influence is documented for Star and for Cedar's environment goals, both 1980s. For the Alto software of 1973–75 there is none; for Mesa 1976–77 it is BitBlt plus an experimental debugger add-on. BitBlt and overlapping windows were specifically Ingalls' work, which he internally demonstrated in 1975.

Paul McJones has a nice Mesa History Collection with a lot of primary sources from the time: https://softwarepreservation.computerhistory.org/mesa




Consider applying for YC's Winter 2027 batch! Applications are open till November 2.

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: