| ▲ | throwanem 4 hours ago | |||||||
One would as sensibly dismiss the concept of an assembly line as "how to build a car if you cannot." Dijkstra was a mathematician. It is a necessary discipline. If it alone were sufficient, then the "program correctness" fans would have simply and inarguably outdone everyone else forty years ago at the peak of their efforts, instead of having resorted to eloquently whiny, but still whiny, thinkpieces (such as the 1988 example [1] quoted here above) about how and why they would like history to understand them as having failed. [1] https://www.cs.utexas.edu/~EWD/ewd10xx/EWD1036.PDF [2] [2] I will freely grant that the man both wrote and lettered with rare beauty, which shames me even in this photocopier-burned example when I compare it to the cheerful but largely unrefined loops and scrawls of my own daily hand. | ||||||||
| ▲ | _dwt 4 hours ago | parent | next [-] | |||||||
The formal methods people may yet have the last laugh. I did not have Lean becoming a hyped programming language / proof assistant on my bingo card for 2025-26 and yet here we are, because these tools help us close the validation loop for LLM agents. That is not dead which can eternal lie... But yes, I think the best rebuttal to Dijkstra-style griping is Perlis' "one can't proceed from the informal to the formal by formal means". That said I also believe kind of like Chesterton's quote about Christianity, they've also mostly not been tried and found wanting but rather found hard and left untried. By myself included, although I do enjoy a spot of the old dependent types (or at least their approximations). There's an economic argument lurking there about how robust most software really needs to be. | ||||||||
| ||||||||
| ▲ | bigfishrunning 4 hours ago | parent | prev | next [-] | |||||||
I think the real tragedy here is that we can spend *all* of our time trying to improve the quality of our output, but it simply doesn't matter, because as long as the button is where the boss wants it to be and is the right color, all is right with the world. Literally nothing else matters, and we (or at least I) have wasted a ton of time getting good at writing software. | ||||||||
| ▲ | zephen 4 hours ago | parent | prev [-] | |||||||
> One would as sensibly dismiss the concept of an assembly line as "how to build a car if you cannot." I agree, but I'm not sure this says what you think it does. The people on the car assembly line may know nothing of engineering, and the assembly line has theoretically been set up where that is OK. The people on the software assembly line may also (and arguably often do) know nothing of engineering, but it's not clear that it is possible to set up the assembly line in such a way so as to make this OK. Arguably, the use of LLMs will at least have some utility in helping us to figure this out, because a lot of LLMs are now being used on the assembly line. | ||||||||