My use-case would be a "real-time" debug tool of sorts, that would allow the viewing of trees as they have, but also the modification of them, and the values at the nodes (think the hierarchy+inspector of unity3d, but a remote tool).
Anyway this post is food for thought and I'm going to read more about how it was done. I like the API they've created for sending views, really interesting.
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.
I've seen light table years ago and thought it looked really neat, but I haven't looked into it much as it wasn't directly applicable to my environments. But, probably worth a look for ideas.
On the topic of time-travel debugging, have you seen the demo: https://www.youtube.com/watch?v=72y2EC5fkcE (Tomorrow Corporation Tech Demo) Very impressive, worth a watch.
AFAIK it doesn't have any sort of extension like this though. But maybe someone with more CL experience can advise! Hopefully someone has a better idea for you :)
I see the stuff in the parent post but not sure exactly what it can do vs what I envision or you may be picturing...
I use it a lot at work it's fun
I'd much prefer to use more mature code, but I haven't seen anything similar.
This is also a very handy idea...
"gtfl-out &rest expressions => no values"