I am a long time disciple of Prof. Wirth. I started with Pascal, used it on the Macintosh before they foolishly switched to Objective-C, and built huge projects in Modula-2 for 20 years. Oberon and the Lilith were interesting experiments, but Oberon 1 was marred by removal of enumerated types, which made it impossible for his user base of Pascal and Modula-2 users to port their code into Oberon. Oberon/Lilith got closer to interchangeable parts than anything since, and that was a long time ago! Modula-2 is available for free from the ADW website (Stony Brook Windows version), and it produces code significantly smaller, and more reliable than C can do! It is a tragedy of history that stupid old C continues strong to this day, when a superior alternative existed.