Description
Python 3.6 was released in December of 2016 and it has a lot of new
cool features. Some of them are quite easy for using: a developer can
read, for example, about f-strings and they can start using them in
their programs as soon as possible. But sometimes features are not so
evident, and a new frame evaluation API is one of them.
The new frame evaluation API was introduced to CPython in PEP 523 and
it allows to specify a per-interpreter function pointer to handle the
evaluation of frames. It might not be evident how to use this new
feature in everyday life, but it’s quite easy to understand how to
build a fast debugger based on it.
In this talk we are going to explain how standard way of debugging in
Python works and how a new frame evaluation API may be useful for
creating the fast debugger. Also we will consider why such fast
debugging was not possible in the previous versions of Python. If
someone hasn’t made a final decision to move to Python 3.6 this talk
will provide some new reasons to do it.