Arthur Whitney had a whole operating system, kOS, in a few hundred lines iirc (including bare metal storage drivers, screen drivers, file system and more), with a more-than-sql database in 200 lines and an editor in a few tens.
The magic — other than Arthur’s genius - was the programming language K (also designed and implemented by Arthur).
And from another direction, the STEPS project from Alan Kay did a metal-to-everything in 20K lines, including IIRC a paint program and word processor. They only counted lines you need to understand - e.g., it parses the TCP spec RFC to get all the structures and constants; the spec parser is included in the 20K count, but the TCP docs and the generated TCP code is not.
Totally love the quest for elegant and minimal implementations.
But I don't think line-counts are comparable across languages.
The APL/K crowd has a very different opinion on the number of statements per line.
To give an impression of the style, this is the C-implementation of a K interpreter.
Have fun deciphering that.
Yup, I've seen a lot of those. Cool and inspirational stuff.
My favorite so far has been project Oberon. I've not seen how it's assembler works though. What I want is a full stack (assembly included) self-bootsrapping implementation
I was always disappointed that STEPS was something that produced a few research papers, but didn't produce an ongoing open source project that people could try out and innovate on top of. Seems like a waste of funding.
The magic — other than Arthur’s genius - was the programming language K (also designed and implemented by Arthur).
And from another direction, the STEPS project from Alan Kay did a metal-to-everything in 20K lines, including IIRC a paint program and word processor. They only counted lines you need to understand - e.g., it parses the TCP spec RFC to get all the structures and constants; the spec parser is included in the 20K count, but the TCP docs and the generated TCP code is not.