Comment

Comment by wormius

I think this is possibly related to something I was thinking about when dealing with graph traversal in Python, wanting a debug tool that let me snapshot each step but then diff the watched variables. Being able to move back and forth to see the state change, and the connections so I could determine what was influencing the state. This was because no matter how hard I tried, I kept running into variables that I was watching that appeared to be the same reference, have different values (so I know I was referring to something wrong, but could not for the life of me figure it out, and though if I only had a way to step/trace and do this visually like an AST that highlights changed values and you could see back to its root where it's actually being modified visually)

I found out there's a thing called "deterministic debugging" (and the biggest known example afaict is rr: https://rr-project.org/

Apparently MS has a time-travel debugger... I pictured the AST being populated and repopulated via the steps, and the ability to diff changes over time.

Here's a wiki on various systems, though most of these seem to be typical text based "trace" options.

https://en.wikipedia.org/wiki/Time_travel_debugging (I hazard that this may be similar to some of the power of Common Lisps REPL, but could be wrong)

I found a professor at one point doing some research and he seemed to have given up without more funding. I thought I had it bookmarked, but am unable to find it right now. If I can remember (ha) I'll see if I can find it tomorrow. He had the most interesting approach that seemed closest to what I think you (and possibly I) are thinking, with propagation through the tree (I don't think I was picturing editing the graph directly per se - but that would be a cool idea).

Have you looked into LightTable or Brett Victor's work at all? http://lighttable.com/ (somewhat tangentially related, I think?)

Sorry this is so scattered I need to hit the hay LOL.

parent wormius 2 years ago

Discussion

Live from the official Hacker News API

A modern reader for Hacker News · SvelteKit + Skeleton