6 comments

[ 22.7 ms ] story [ 1046 ms ] thread
Interesting. I have never heard of Modula-3. I remember Modula-2 and then Oberon. Thanks for sharing.
It was very influential on Java (as the Java people acknowledged in their early documents) and C# (unsafe types).
Wirth didn't make it. It was a good design, though, as illustrated here:

https://en.wikipedia.org/wiki/Modula-3

Many commercial projects and even some OSS (eg CVSup) got built with it. SPIN OS as well. Another step in right direction away from things like C++. ;)

Modula-3 was a required course at Cambridge, including for postgrad (which I did). I _hated_ it, and so did most of the others on the course.

It did structural polymorphism well before Go, but did the whole thing through a 32-bit hash. This meant you could (quite easily) structure a type that was castable to Int, String, anything you wanted...

And OMG the ridiculously verbose syntax.

[quote]And OMG the ridiculously verbose syntax.[/quote]

Not as bad as Ada, VHDL, Cobol etc.!

Seriously, we were using 80x25 terminals, and everyone was designing languages where you couldn't write a simple function that fit on the page!