TE
TechEcho
Home24h TopNewestBestAskShowJobs
GitHubTwitter
Home

TechEcho

A tech news platform built with Next.js, providing global tech news and discussions.

GitHubTwitter

Home

HomeNewestBestAskShowJobs

Resources

HackerNews APIOriginal HackerNewsNext.js

© 2025 TechEcho. All rights reserved.

Making a low level Linux debugger, part 3: our first program

171 pointsby asrpalmost 7 years ago

1 comment

pmarreckalmost 7 years ago
I now feel like debuggers are a design smell. I&#x27;ve used them less and less (to the point of not having to use them at all) as I&#x27;ve coded more test-first and designed things to be smaller (lower logic depth, etc.) I mean, all a debugger is, really, is a window into dynamic state, so if you control the, let&#x27;s just call it what it is, the &quot;rampant dispersion of state&quot; at all times, you end up not needing a debugger (and producing fewer bugs) IMHO.<p>Now I&#x27;m sure that kernel-level stuff wasn&#x27;t designed like this, and probably won&#x27;t be for some time (I&#x27;m hoping Rust changes that story, but not a low-level coder), so debuggers may still be necessary- just making a point that it seems possible to design in such a way that the need for one is drastically reduced, if not eliminated. Or at least, that&#x27;s how it seems to me in high-level-language-land (things may differ at the assembly and C levels).<p>EDIT: I apologize for OT, probably not the ideal place to start a &quot;are debuggers really necessary if you design code correctly?&quot; discussion, after all this is part 3 of a series, my bad
评论 #17493207 未加载
评论 #17493467 未加载
评论 #17492898 未加载
评论 #17494754 未加载
评论 #17494147 未加载
评论 #17496010 未加载