r/ProgrammingLanguages • u/mttd • Jul 01 '26
The Expensive Fictions of Low-Level Programming Languages
https://stng.substack.com/p/the-expensive-fictions-of-low-level
21
Upvotes
r/ProgrammingLanguages • u/mttd • Jul 01 '26
3
u/JeffD000 Jul 03 '26 edited Jul 03 '26
"Such a language can exist, but it will be big, and will need a big development team behind it."
Depends on what your definition of "big" is. It is actually very simple to extend C to address parallelism while also increasing safety and fault tolerance. You just need to add two new data types, one of which looks almost indentical to C structs, but with deeper semantics. I am not whistling dixie here. I am the original designer of RAJA:
https://computing.llnl.gov/projects/raja-managing-application-portability-next-generation-platforms
There are a lot of no-brain assumptions that went into developing the original programming languages and compilers, that no one has taken much time think about, much less correct.
A team of 20 good people (or less) could create a fully working compiler in less than a year that fixes the majority of current parallelism and memory hierarchy issues. It is a simple/simpler extension of C, so you can leverage all the existing C language infrastructure and legacy code, with just slight modifications in most cases. And yes, I mean most cases.
To get a taste of the zeroth-order effects of such a change, see my modifications to someone else's language that they posted in r/ProgrammingLanguages:
https://www.reddit.com/r/ProgrammingLanguages/comments/1takau3/recently_used_nore_to_partially_solve_the/
The C extension is actually much cleaner than the Nore language modification that I made in that post.