Python IDLE Stability

One of the most irritating issues I’ve had with Python has been the stability of the default IDLE interface. While I understand that most languages can be used to crash a machine, but it is far too easy in python to do it with seemingly trivial commands. Mostly this seems to be related to the size of the terminal buffer and displaying things on screen. As an example, if you try to print an reference to an object, which a beginner might try, (eg print myNewObject) you get a nice easy hex number for the object’s memory location, something you can use to identify two variables that refer to the same object. This is good. However, if you have a large array and try something like print myFirstArray[]” IDLE will send things to the terminal until it crashes (which happens after a thousand or two lines, not a particularly large number). Once you’ve crashed IDLE in that fashion there’s no way to save the output of your session or access any of your data, so you end up losing a lot of work. There’s just no reason for a print command to cause data loss in what is supposed to be a user friendly language.