← Back to context

Comment by srean

16 days ago

Modula-2 happened way before my time but was quite taken by it. Especially it's fibres/coroutine features.

https://news.ycombinator.com/item?id=26688380

I used Modula-2 to build an automated lab system. It worked, but I found myself being annoyed by small features. For instance the type conversion keywords seemed to have no pattern to them, and the case sensitivity meant you were always hammering shift. Some good ideas, but I'm not sure that the problems of the time and the size of the available computers made them particularly useful.

The teaching language for my undergrad OS course (late 80s) was Modula-2. We had no experience with it prior to the class (but had experience with Pascal and several other languages by this point) and the whole of intro was "get Kim King's Modula-2 book". Everyone seemed to pick up the language just fine. Unfortunate it never much took off.

The first compiler I ever bought with my own money was a Modula-2 compiler for my Atari ST I picked up second hand for something like $100 CAD, which was a lot back in the late 80s for a teenager.

Was a mistake not to just do C, though. The Atari ST's whole OS environment was built with C void pointers and duck typing in mind.

Apparently the Russian Glonass satellites are programmed in Modula-2 [1] which seems like a wild choice.

1) https://en.wikipedia.org/wiki/Modula-2#Russian_radionavigati...

  • Well, back in the 1980's up to early 90's, Modula-2 enjoyed a mild success in Europe.

    Given that it was available in 1978, and the satellites launched in 1982, it seems a plausible choice like any other, given the computing ecosystem at the time.

  • In 1999 I used Modula-2 for my first computer science/programming languages exam at university. The environment was a bit like Turbo Pascal 3.0, though with a more complete language (TP3 had no modules/units) and library, comparable perhaps to TP5.

    • Units were introduced in Turbo Pascal 4, then TP 5.5 added OOP based on Apple's Object Pascal, further improvements were then based on the Object Pasca / C++ relationship on Borland's compilers.