Better Workflow with source code dependency graphs

I was annoyed that everytime I hit “run all” in my IDE, it re-runs everything, including the parts that did not change.

Therefore I created SimpleCache.jl. It uses reflection techniques to generate a dependency graph of your source code to only rerun the parts that did change.

It is written incredibly hacky and bad, so don’t look at the source code.

I will register that package soon.

2 Likes

Something like this?

Nope. With my solution, if you change some functions and rerun the program, only functions that have changed or call a changed function will be run again.

https://github.com/JuliaCollections/Memoize.jl assumes that the function only depends on its arguments. My solution analyzes the AST to know which functions depend on which lines of code.

1 Like

I suspect Pluto does the same kind of things to implement its “reactivity”. Maybe you could get in touch with them to see if/how your technical approaches differ, and whether it would be interesting for you to join forces?

2 Likes

I talked with him. Maybe I will use Plutos library in the future.