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.

Show HN: D0 – Visual Studio add-on for faster C++ debugging

2 pointsby donadigoover 1 year ago

1 comment

donadigoover 1 year ago
Hey HN, Adam here. I&#x27;ve been building D0 - an extension that adds non-standard debugging features that help debug C++ applications in real time without setting any breakpoints.<p>D0 was previously a separate application, now it&#x27;s exclusively a Visual Studio extension (with integration for other editors coming soon).<p>With D0 I&#x27;m focusing on features that make you less likely to place a breakpoint and more likely to observe what is going on immediately. Currently the extension has 4 main features:<p>1. Shows live code execution in the Visual Studio editor as it happens. This eliminates the need for setting breakpoints when you just need to see if a line is running or not which happens surprisingly quite often. And if you do need to inspect the values with the application in break mode, the line indicators give you a much better idea of e.g. when to expect that a breakpoint will be hit.<p>2. Shows live call stack of the current function. There&#x27;s often times a need to inspect the call stack of a particular function. Usually this requires putting a breakpoint and inspecting the call stack while the application is in break mode. D0 improves on this and shows all paths that a function was called with previously just by putting the editor cursor anywhere in that function. This is much more ergonomic if you need to iterate all callers as you do not need to continuously break the application and remember who called the function.<p>3. Allows inserting scripting snippets anywhere in the code. These snippets can print or view complex objects without recompiling the main program and can be easily toggled on&#x2F;off. This enables a very fast iteration on e.g the set of logs you need to produce at runtime since you can just enable&#x2F;disable certain snippets without any waiting.<p>4. View objects live - tied with the scripting snippets, you can put a view() call in your main code with a snippet and D0 will create an object view inside Visual Studio that allows you to monitor variables live and change their values. This can be helpful when you need to tweak some settings&#x2F;properties within the running application and it&#x27;s basically a runtime version of the Locals window in Visual Studio when you hit a breakpoint.<p>There&#x27;s more features that I&#x27;m working on and I&#x27;m looking forward to your feedback!<p>Extension on Visual Studio marketplace: <a href="https:&#x2F;&#x2F;marketplace.visualstudio.com&#x2F;items?itemName=donadigo.d0" rel="nofollow noreferrer">https:&#x2F;&#x2F;marketplace.visualstudio.com&#x2F;items?itemName=donadigo...</a> (or search &quot;D0&quot; in Visual Studio extensions menu to install)<p>Website: <a href="https:&#x2F;&#x2F;d-0.dev&#x2F;" rel="nofollow noreferrer">https:&#x2F;&#x2F;d-0.dev&#x2F;</a><p>1 minute demo: <a href="https:&#x2F;&#x2F;www.youtube.com&#x2F;watch?v=6U2TS80nUAY">https:&#x2F;&#x2F;www.youtube.com&#x2F;watch?v=6U2TS80nUAY</a>