Here is a concrete story what happened me few weeks before, while I was working on a Nintendo emulator in Pharo. I was playing with Super Mario, and at the end of the 3rd or 4th level my emulator crashed because of some index miscalculation in a sprite drawing method. When this happens in smalltalk, a debugger window pops up, and the cursor is on the problematic line. I fixed the bug in the debugger and pressed proceed then continued my journey to save Princess Peach :).
In a live environment it is easy to make experimentations because you can get very quick feedbacks, and there is no need to switch between modes like development to execution or execution to development. Catching and fixing certain bugs is also easier as I showed before.
I think there is a need for this kind of development, that's why people try implementing code hotswapping and class reloading capabilities in various programming environemnts. But still most of them are just limited workarounds compared to smalltalk where live coding works fine for decades.
In a live environment it is easy to make experimentations because you can get very quick feedbacks, and there is no need to switch between modes like development to execution or execution to development. Catching and fixing certain bugs is also easier as I showed before.
I think there is a need for this kind of development, that's why people try implementing code hotswapping and class reloading capabilities in various programming environemnts. But still most of them are just limited workarounds compared to smalltalk where live coding works fine for decades.