The "Kwargh!" Problem
summary
Claim is that Python is essentially impossible to fully statically analyze but useful heuristics can recover many forwarded keyword args. Uses inspect and ast to measure APIs (pandas shows ~40% of callables accepting *kwargs, matplotlib ~10%, numpy/sklearn/bokeh near 0%), and explores bytecode call interception and a dynamic "ratch" module that adds read watches to objects to trace where args go. Builds a prototype that logs call sites and even doubles integers as a demo; results are incomplete but practically useful and automatically generatable*.
AI-written summary · about
chapters (8)
- 0:00Introduction
- 1:04Engineering problem
- 2:08Quark problem demo
- 8:05Solving Quark problem
- 11:15Static analysis fails
- 20:07Dynamic analysis with rat
- 27:12Rat call tracking demo
- 29:22Q&A
related talks
36mQuibbler: Your Data - Interactive!
19mMAGPY: Compiling Eager Mode DNN Programs by Monitoring Execution States
31mA Recent History of Python Through Stack Overflow Questions and Answers
01h 07mSufficiently Advanced Testing
34mFinding and creating gambiarras with python ASTs
01h 56mIntro to Julia
53mLightning talks - session 1
45mKeynote: The Python Butterfly Effect
