Then why does the python repl still "print" errors and return you to the prompt, instead of a debugger? The python shell has no concept of restarts: it prints errors as a side-effect and stops further processing. Lisps pause evaluation at the point of error and give you options to proceed.