James Gosling - Simula: a personal journey
UiO Realfagsbiblioteket1 HN recommender · recommended in 1 month, 2020–2026
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.
Up next
16 mo on HNHow Python was Shaped by leaky Internals, Armin Ronacher, Flask framework
Видео с мероприятий {speach!
15 HN recommender · 2017–2025
12 mo on HNWhy Isn't Functional Programming the Norm? – Richard Feldman
Metosin
12 HN recommender · 2019–2025
11 mo on HNMaybe Not - Rich Hickey
ClojureTV
14 HN recommender · 2018–2025
10 mo on HNConway's Game Of Life in APL
Dyalog
11 HN recommender · 2010–2024
9 mo on HNLecture 1A | MIT 6.001 Structure and Interpretation, 1986
MIT OpenCourseWare
11 HN recommender · 2012–2024
10 mo on HNCrockford on JavaScript - Volume 1: The Early Years
YUI Library
10 HN recommender · 2013–2022
10 mo on HNGrowing a Language, by Guy Steele
Bill Pugh
11 HN recommender · 2014–2026
10 mo on HNEffective Programs - 10 Years of Clojure - Rich Hickey
ClojureTV
10 HN recommender · 2017–2026
9 mo on HNBrian Goetz - Stewardship: the Sobering Parts
ClojureTV
10 HN recommender · 2014–2025
10 mo on HNJavaScript: The Good Parts
Google TechTalks
11 HN recommender · 2009–2020
9 mo on HNIdeas about a new programming language for games.
Jonathan Blow
7 HN recommender · 2014–2025
8 mo on HN"Propositions as Types" by Philip Wadler
Strange Loop Conference
9 HN recommender · 2015–2026
7 comments from Hacker News
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 .
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 ).
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 ).
> ...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
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
> it is the progenitor of the most popular, and reviled program paradigm, Object Oriented Programming. Designed by Ole-Johan Dahl, and Kristen Nygaard in 1962 at the Norwegian Computing Center in Oslo What the author writes in the first sentence only applies to Simula 67, which indeed was the first general purpose object-oriented programming language; Simula I instead was quite different, not yet object-oriented, and dedicated to simulation. > 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
> Smalltalk had always been a primarily academic language There was quite a hype in the nineties with many enterprise applications based on Smalltalk; my first contact with Smalltalk was in a commercial, not an academic setting; most of it blew away when cheap, fast (HotSpot) Java became available. > Ruby, Python, Java, C#, etc, all owe a great deal to Smalltalk. That's a bit too optimistic. E.g. Python is not a descentent of Smalltalk (see e.g. link ), neither is Java (see e.g. ▶ this video ). C# is also rather a brain child of Java and C++ than of Smalltalk.