_wire_
2 hours ago
Wirth designed Pascal as a teaching language, per his book Algorithms + Data Struvtures = Programs.
So it's to be expected that Pascal has serious limitations for engineering a whole computer system and that Kernighan was sensitive to these limitations.
I was taught programming according to Wirth, and there was a lot of fraternal bitching about the hazards of C in my classes.
After learning to think about programming in Wirth's way, C/Unix felt like a revelation of expression with a total architecture manifestation that Pascal (nor Modula) could ever reach that resolved the conflict between top-down design and bottom-up engineering approaches.
Props to Alan Kay's OOP aspirations for new abstractions founded from the insights of Church, McCarthy and Sutherland and to all the esoterica.
And props to Stroustrup: it's hard work to make a rich windowing system in C without abstraction at the level of Stroustrup style OOP, even as C++ turned out to be a cut through architectural bone.
As higher levels of abstraction will always called for to endow new applications, I am struggling to welcome to the sea change and baffling emergence of genAI.
I'm not troubled by the prospect of an AI retrieving binaries from an archive, where those programs have been "proven" by formal methods.
When I hear about the prospect of AI "generating" machine code I get queasy.
Arg... I'm babbling my perspective and regards for the tuple of VAX, C, and Unix as a lovely architecture that will stand the test of time.