Very cool article. I have to admit I'm a little frightened of the bulk and complexity of the RPython translation pipeline. I'm not happy about the prospect of waiting an hour to learn my code runs afoul of poorly documented type inference logic. Perhaps when PyPy stabilizes the team can trim back some of the abandoned paths and speed up translate.py?
That has two sources - one is the complexity of the python interpreter the other is the complexity of the toolchain itself. Compiling converge takes ~5 minutes, while compiling python interpreter about 30minutes. There is definitely an ongoing effort to make it faster, for example by using the STM to parallelize it to multiple cores.
PS. Type inference errors happen in roughly 1/5th of the compilation time. Not ideal, but better than waiting 30min.