I often start the python interpreter while testing a script to check a code stub without executing the entire thing. There is no direct way to do this in blender. Adding a 'terminal' window mode to blender seems like the obvious solution, but perhaps there is something more elegant.

Besides allowing testing of scripts this creates a command-line-interface for blender that would handle repetitive but single use actions like...

This code snippet creates a simple Python shell to the Blender console. It handles neither multi-line statements nor exceptions, but creating a fully compatible shell is not a problem. Anyway, I don't know if this solves your problem.

To get a console window in MacOS X you must call Blender from the command line. Something like:
/Applications/BlenderPublisher.app/Contents/MacOS/blenderpublisher
You could also create a link to the executable and name it "blender" for easy access. Say:
ln /Application/...publisher ~/blender.
I also edited the script:

It would be elegant if there was a toggle button on the script window that executed a script after it was selected in the drop-down menu. This would make selecting GUI scripts (or this console hack) like selecting a window mode. I think it would be consistent with the rest of the interface.[/code]