2 ms·
It seems like a lot of programming ideas are just ways to manage spaghetti rather than reduce the spaghetti. I worry that a lot of programming is a sort of loca
by c3534l 7y ago
It seems like a lot of programming ideas are just ways to manage spaghetti rather than reduce the spaghetti. I worry that a lot of programming is a sort of local minima, where people dig themselves into a hole that they can't iteratively dig themselves out of. Something like this, which allows you to write code full of cross-cutting concerns and lets the programmer fool themselves into thinking they wrote clean code because they swept everything under the rug - that kind of tool is just going to dig deeper holes.
- akkartik 7y ago> It seems like a lot of programming ideas are just ways to manage spaghetti rather than reduce the spaghetti. Agreed! This is why I built this approach in a ~1000 lines of code. The ability for tools to create new problems was very much on my mind. My current project using this approach is a bootstrapped computing stack from scratch: https://github.com/akkartik/mu#readme https://github.com/akkartik/mu#readme. It's at ~40k LoC (of machine code) and self-hosted, and it can create bootable images (when packaged with an OS kernel). I expect to get to approximately C's level of expressivity in another ~20k LoC or so. So I care very much about what I call the "thrust to weight ratio" of a codebase. The less code you have, the less spaghetti you can create. My implementation of layers will keel over and fail terribly for large projects with many team members. I consider that constraint to be a good thing.