I found this post from a Python friend of mine very interesting, especially in the context of comparing Python and Julia introspection and metaprogramming tools. He works through what is necessary for function-level dependency tracking in python code – a really impressive level of metaprogramming. Maybe even Julia uses too much dark magic to implement similar capabilities (IRTools, Cassette, etc). I am curious whether folks have quick and rough pointers on what to learn in order to implement the same capabilities in Julia. I would like to stress that it took just about 100 lines to do a first version in python.
It was rather difficult for me to find a good place to post this, but paradoxically “Internals” seems like the best category, given the amount of introspection being discussed.
Direct link: Practical dependency tracking for Python function calls | Alex Makelov