A ”reverse debugger” is a debugger where you can go forward and backward in time. It is an uncommon feature, at least in the open source world, but I have no idea why. I have used undodb-gdb and rr, which are reverse debuggers for C code, and I can only say that they saved me many, many days of poking around blindly in gdb.
The PyPy team is pleased to give you ”RevPDB”, a reverse-debugger similar to rr but for Python.
» Armin Rigo | morepypy.blogspot.com.es