HackerTube

James Gosling - Simula: a personal journey

UiO Realfagsbiblioteket1 HN recommender · recommended in 1 month, 2020–2026
YouTube
talk · intermediate · evergreen · 2020–2026 on HN

James Gosling gives a personal talk at the 50th anniversary seminar of Simula about using the language from 1974 and how it shaped his thinking. He explains how Simula's object model and coroutines influenced the design of Java.

HN cites it as a first-hand source that Java's object model traces to Simula 67 rather than Smalltalk.

7 comments from Hacker News

@seumars2022-03 · in “Christopher Alexander has died”

Simula67 was already known in academic circles by the early 70s. Donald Knuth had first taken an interest in Simula I after a visit in Oslo but couldn't manage to bring it to Stanford because of the very high licensing fees the Norwegian Computing Center were charging for it. That first iteration of the language was more focused on being a general purpose "system description" language for different kinds of real-life simulations (this would also kickstart Nygaards work on the social impact of technology and the beginnings of user-oriented system development, then participatory design). Simula67 however wasn't the "incomprehensible" language that Kay describes. The second iteration was much more focused and had all the elements of modern object-oriented patterns: classes, subclasses and inheritance, objects, object references and attributes, object dot notation, polymorphism, etc. So Kay's take on Simula being this strange language he had to "make sense of" for his work on Smalltalk, or even the fact he claims he coined the term "object-oriented" is total BS. Here's a more nuanced and impartial account of Simula by James Gosling, if you want to know more: ▶ this video .

Recommends View on HN
@Rochus2026-07 · in “The Java Story, the Official Documentary”

Interesting documentary; nice to see all the people involved; Simula is not mentioned in the documentary, though in an earlier lecture, Gosling was very specific that Java implemented the object model of Simula 67, which he had used before (see ▶ this video ).

@Rochus2024-01 · in “Niklaus Wirth, or the Importance of Being Simple”

I don't see what this all has to do with Component Pascal (the language report is not by Mössenböck, but by Pfister et al., btw.). You should instead have a look at the Newsqueak publications. There are more similarities of Go with Algol than with Oberon. Newsqueak reused a few features of Pascal, some of which are still present in Go. The Acme editor has similarities with the original, text based Oberon system user interface, which unfortunately shares the name with the language, but is not the same thing. The user interface of the Oberon system again looks like a stripped down version of the Cedar environment developed at PARC (where Wirth had his sabbatical). The object model of Java directly traces back to Simula 67, not to Smalltalk or its descendants (see e.g. ▶ this video ).

@Rochus2023-07 · in “Simula the Forgotten Programming Language”

> ...progenitor of the most popular, and reviled program paradigm, Object Oriented Programming. Designed by Ole-Johan Dahl, and Kristen Nygaard in 1962... In 1962 the first version of Simula appeared which was quite different from Simula 67, not yet object-oriented, and dedicated to simulation. Simula 67 was the first general purpose object-oriented programming language. > Then, in 1991 another language would enter the playing field, Java, and the rest is history. Java actually used the object model of Simula 67; James Gosling gave a talk about it at the 50th anniversary in Oslo. Here is the link: ▶ this video

@gpderetta2023-06 · in “Object-oriented Programming with ANSI-C (1993) [pdf]”

I'm sure that Objective-C and Smalltalk have also been strong influences, especially in the libraries. But I would say that the OO semantics are very Simula like. Can you really claim as Smalltalk inspired a language without an easy to use DoesNotUderstand? That's pretty much the basis for first class messages and transparent delegation. Also: ▶ this video