3 ms·
The Lisp machines were contemporaneous with Unix, as were Wirth's Pascal based systems, the Burroughs with its bound checks, Algol 68. Dont get me wrong: C get
by wbl 7y ago
The Lisp machines were contemporaneous with Unix, as were Wirth's Pascal based systems, the Burroughs with its bound checks, Algol 68.
Dont get me wrong: C gets the job done. It's successful in a wide number of domains, and I do like using it. But its success was not inevitable and involved a lot of external and soft factors.
- notacoward 7y agoLisp machines were contemporaneous C was introduced in 1972. Lisp machines started in 1975, so can't have influenced C without some time travel. > Wirth's Pascal based systems Pascal predated C by only two years, so it's not clear how much it could have influenced C's design. (Side note: Wirth originally intended Pascal to be a pure teaching language, and was reportedly furious when a TA wrote the first compiler to make grading easier.) More importantly, Wirth's Modula machines could not have existed until at least 1979 when the language itself was introduced. > Burroughs with its bound checks That's a machine, not a language. What language(s) were its OS and compilers written in? > Algol 68 Now we're getting somewhere. Yes, Algol 68 had existed for a whole four years. Was it suitable as a systems programming language? Not in its canonical form, but there were certainly members of its family (e.g. Wirth's PL/360 and ALGOL/W) that were worthy alternatives to C. > its success was not inevitable Never said so. I'm not even trying to claim that C was the best possible language at the time. The question is whether it was well designed for its time, with specific reference to the issue of memory management. I'd say it was, and leave it as an exercise for the reader to determine what strategies those other alternatives - even if they were superior in some ways - used to deal with heap-allocated memory.
- wbl 7y agoC was not born in a day. ANSI C introduced a number of significant features like prototypes, and commercial compilers also evolved it.
- notacoward 7y agoDid any of those subsequent changes affect the basic memory-management model?