PML is cheap syntax. We should strive to create custom syntaxes for each paradigm.
[As you pointed out, Alan Kay said "In a 'real' Computer Science, the best languages of an era should serve as 'assembly code' for the next generation of expression". Around 31:50 of https://www.youtube.com/watch?v=fhOHn9TClXY&t=859s]
I have some perplexity about the "1970s trap" paragraph. Let me start by saying that I am an amateur programmer, so I could be wrong.
Before the C was invented, there were many programming languages in use (Fortran, Algol, PL/I, Lisp...). The C language was invented in 1973 only for writing the operating systems (Unix in that year). After 1973, these events happened:
_ programmers started to use C for writing programs outside from operating systems.
_ many new languages were invented, imitating the syntax and the behavour of the C language (C++, Objective C ...).
_ many older languages were partially or totally dropped.
I suppose this trend happened for a simple reason: linking more executables written in different programming languages, in those years, was complicated. Using C as multi-purpose language seemed a viable solution for solving this problem.
Seibel: Do you think C is a reasonable language if they had restricted its use to operating-system kernels?
Allen: Oh, yeah. That would have been fine. And, in fact, you need to have something like that, something where experts can really fine-tune without big bottlenecks because those are key problems to solve. By 1960, we had a long list of amazing languages: Lisp, APL, Fortran, COBOL, Algol 60. These are higher-level than C. We have seriously regressed, since C developed. C has destroyed our ability to advance the state of the art in automatic optimization, automatic parallelization, automatic mapping of a high-level language to the machine. This is one of the reasons compilers are… basically not taught much anymore in the colleges and universities.
Thanks for commenting! Modern ANSI C no longer resembles 1973 K&R C. We (the royal "we") veered off and concentrated on function-based programming, using only text which then led to the need for intense type-checking that causes syntactic pollution of programs. Additionally, compilering and function-based thinking actually don't fit well together. https://programmingsimplicity.substack.com/p/how-c-accidentally-locked-programming?r=1egdky
Would PML be an IR?
Python, Rust, et al, are IRs for PML.
PML is cheap syntax. We should strive to create custom syntaxes for each paradigm.
[As you pointed out, Alan Kay said "In a 'real' Computer Science, the best languages of an era should serve as 'assembly code' for the next generation of expression". Around 31:50 of https://www.youtube.com/watch?v=fhOHn9TClXY&t=859s]
I have some perplexity about the "1970s trap" paragraph. Let me start by saying that I am an amateur programmer, so I could be wrong.
Before the C was invented, there were many programming languages in use (Fortran, Algol, PL/I, Lisp...). The C language was invented in 1973 only for writing the operating systems (Unix in that year). After 1973, these events happened:
_ programmers started to use C for writing programs outside from operating systems.
_ many new languages were invented, imitating the syntax and the behavour of the C language (C++, Objective C ...).
_ many older languages were partially or totally dropped.
I suppose this trend happened for a simple reason: linking more executables written in different programming languages, in those years, was complicated. Using C as multi-purpose language seemed a viable solution for solving this problem.
I remember an interview to Frances F. Allen:
https://www.noulakaz.net/2020/05
Here an excerpt of the interview:
Seibel: Do you think C is a reasonable language if they had restricted its use to operating-system kernels?
Allen: Oh, yeah. That would have been fine. And, in fact, you need to have something like that, something where experts can really fine-tune without big bottlenecks because those are key problems to solve. By 1960, we had a long list of amazing languages: Lisp, APL, Fortran, COBOL, Algol 60. These are higher-level than C. We have seriously regressed, since C developed. C has destroyed our ability to advance the state of the art in automatic optimization, automatic parallelization, automatic mapping of a high-level language to the machine. This is one of the reasons compilers are… basically not taught much anymore in the colleges and universities.
Thanks for commenting! Modern ANSI C no longer resembles 1973 K&R C. We (the royal "we") veered off and concentrated on function-based programming, using only text which then led to the need for intense type-checking that causes syntactic pollution of programs. Additionally, compilering and function-based thinking actually don't fit well together. https://programmingsimplicity.substack.com/p/how-c-accidentally-locked-programming?r=1egdky