Partial evaluation is a powerful optimization technique that allows you to use the strengths of Python (expressive, fast runtime), and avoid it's weaknesses (slow interpretation). It uses information available at run-time to generate specialized program code that runs faster than the generic one. Partial evaluation has a lot of successful applications, but is not widely used in the Python community.
The talk will focus on:
- what is partial evaluation
- simple example of partial evaluation, it's analysis and benchmark
- when to use partial evaluation
- real-world example: 10x speedup of an OLAP calculation engine
- practical advice, problems, working around them
- partial evaluation library for Python