It seems rare to read of a Python \"virtual machine\" while in Java \"virtual machine\" is used all the time.
Both interpret byte codes; why call one a virtual machi
Don't forget that Python has JIT compilers available for x86, further confusing the issue. (See psyco).
A more strict interpretation of an 'interpreted language' only becomes useful when discussing performance issues of the VM, for example, compared with Python, Ruby was (is?) considered to be slower because it is an interpreted language, unlike Python - in other words, context is everything.