The debug cycle consists of edit, run, observe. When might better debugging tools be counter-productive? If they cause you to forget that there is a debug cycle, and to stay too long observing when a new modification would get you to the answer faster.
I’ve seen people stymied when their tools stop working. Tools will always will have limits. A bug takes hours of execution, it overflows RAM. Prints prepare one for times when you have to leave your tools behind and enter the wilderness.
@akkartik i feel prints lose usefulness in large projects, which is a case against large projects :p
@eris Disagree! The value of prints is independent of LoC or team size. It _can_ be dependent on run duration, however.
In my experience the situations where prints fail to scale are also outside the envelope of other tools. You end up needing to build new tools. (I really like https://github.com/akkartik/mu/blob/main/tools/browse_trace.readme.md)
@akkartik One of the most difficult bugs that I've had to deal with involved a processor which ended up in a tight loop due to stack overflow. Ironically, that behavior was what was intended, albeit through a more traditional while loop. That was a fun one!
Merveilles is a community project aimed at the establishment of new ways of speaking, seeing and organizing information — A culture that seeks augmentation through the arts of engineering and design. A warm welcome to any like-minded people who feel these ideals resonate with them.