5 ms·
Hah, as someone who has studied at University of Oslo, many of the lecturers make sure that Simula isn’t forgotten, by constantly reminding us that it was the f
by judofyr 3y ago
Hah, as someone who has studied at University of Oslo, many of the lecturers make sure that Simula isn’t forgotten, by constantly reminding us that it was the first language with classes etc.
Therefore, a few years back I decided to learn it a bit (I borrowed a really old book from the library) and solved one of the Advent of Code puzzles in Simula: https://github.com/judofyr/aoc2018/blob/master/day3prog.sim https://github.com/judofyr/aoc2018/blob/master/day3prog.sim
I was actually very surprised at how “modern” it felt. However, neither this code nor the article touches on the real cool parts of Simula: Simulations based on coroutines.
- vidarh 3y agoWhen I was at UiO ('93), they did more than that: The introductory CS course required us to use Simula. We had to do several projects in it. Of course at the time there were people on staff who had written books about it.
- trashtester 3y agoDo you remember how Kirkerud (the lecturer and textbook author) opened the semester stating with absolute certainty that AGI would never, ever be reached in our lifetime, or even the next several centuries?
- vidarh 3y agoI don't, but I mostly ignored the lectures as I'd been programming for most of my life already at that point, so I read the textbooks and showed up to the groups (the TA for my group was a member of Crusaders[1], which was fun). I think I attended a grand total of two lectures. I do remember we found a really embarrassing algorithm choice in the Stack class, though (push and pop at the time were O(n), as it used a singly linked list that they iterated through recursively to find the top of the stack... we found that out on a group project where we kept running out stack space because of the recursion...) [1] https://demozoo.org/groups/12/ https://demozoo.org/groups/12/
- Orexis-Vexatii 3y agoNTNU still has at least one course that uses Simula for coursework. TTM4110 - Dependability and Performance with Discrete Event Simulation. An interesting course but without anyone who had real experience with the language teaching it, it was a slog to get through.
- Rochus 3y agoThat's amazing, thanks for pointing out. Which compiler did you use to run Birtwisle's DEMOS?
- Orexis-Vexatii 3y agoI believe we used GNU Cim for the coursework, but it's some years since I took this class personally so I can't say for certain.
- Rochus 3y agoThanks. Do you happen to remember whether the referenced course material was specifically describing the use of DEMOS and Simula as well?
- Orexis-Vexatii 3y agoYes, the material was specifically describing DEMOS and Simula. The coursework was all about the dependability and performance of a simulation we had to program using DEMOS. Interesting course really, but a bit let down by teaching assistants who didn't know the material very well. I believe CIM does the work of compiling C as well, but i may be misremebering.
- Rochus 3y agoDo you happen to have a PDF of the course material which you could share? I will contact the course admin otherwise. Yes, CIM is generating C and uses the available C compiler behind the scenes.
- codetrotter 3y agoThe new informatics building (well, not so new anymore, they built it around 2010) at the University of Oslo is named after Ole Johan Dahl. Dahl was a professor of computer science at the University of Oslo and is considered to be one of the fathers of Simula and object-oriented programming along with Kristen Nygaard. https://en.wikipedia.org/wiki/Ole-Johan_Dahl https://en.wikipedia.org/wiki/Ole-Johan_Dahl https://www.uio.no/om/finn-fram/omrader/gaustad/ga06/ https://www.uio.no/om/finn-fram/omrader/gaustad/ga06/ Many of the rooms inside of that building are named after programming languages. http://magnus.li/ifirooms/ http://magnus.li/ifirooms/ Naturally there is a room named Simula. And there are some rooms named after some big languages like Python and Java. Then there are also rooms named after some more niche languages, like Scheme. And even some obscure languages, like Ada.
- treprinum 3y agoWeren't Simula, Ada, Pascal and Oberon similar to each other syntax-wise? Begin-end etc.
- Rochus 3y agoThere are similar syntax elements since Algol 60 was the common ancestor of all these languages; but in detail there are significant differences in syntax an semantics.
- deaddodo 3y agoAda, Pascal and Oberon are all Wirth-languages (the latter two directly, and the former indirectly). So they're very similar, yes. Simila is not and, beyond some ALGOL-descended similarities, is quite different from the other three.
- Rochus 3y agoAda is not a Wirth-language and only marginally inspired by Pascal. Wirth published Modula about the same time as Ada came around, but Ada is much more complex than Modula, with completely different features.