Combining Embedded and Interactive Python in a Debugger - A Case Study
EuroPython Conference via YouTube
Overview
Syllabus
Intro
OUTLINE
WHAT IS LLDB?
SOME USES OF THE LLDB LIBRARY
TARGETS & PROCESSES
BREAKPOINTS
FRAMES & STACKS
DESIRED GUI DEBUGGER BEHAVIOR
DEBUGGERS IN LLDB
WHY SCRIPTING IN A DEBUGGER?
LLDB EXTENSIONS FOR PYTHON
IMPLEMENTING INTERACTIVE PYTHON INTERPRETER
IMPLEMENTING ONE- LINE SCRIPT COMMANDS
HOW THE DICTIONARIES WORK (1)
INVOKING ONE-LINE SCRIPT COMMANDS
INVOKING INTERACTIVE SCRIPT INTERPRETER
MORE ABOUT LLOB BREAKPOINT SCRIPTS...
COMMANDS - CREATE
COMMANDS - CALL
BUILDING THE LLOB PYTHON API MODULE
PARTICULAR PROBLEMS & SOLUTIONS
GETTING A SINGLE OBJECT ACROSS THE DEBUGGER
WHY A DEBUGGER- LEVEL DICTIONARY?
INTERACTIVE INTERPRETER ONE LINE COMMANDS
BREAKPOINT COMMANDS: A PROBLEM
DICTIONARY SET-UP
DICTIONARY CLEAN-UP
POSSIBLE APPROACHES
WRITE OUR OWN!
EXAMPLE: SIMPLE DICTIONARY PROGRAM Store and find words in Binary Search Tree
THE PLAN Searching Tree Without Restarting Program
USING THE INTERACTIVE INTERPRETER
PYTHON BREAKPOINT COMMAND (At Decision to Follow Right Child)
SUMMARY
Taught by
EuroPython Conference