On Fri, Feb 21, 2014 at 3:26 AM, Marko Rauhamaa <ma...@pacujo.net> wrote: > Chris Angelico <ros...@gmail.com>: > >> Also, what happens if two modules (one of which might be your script) >> written for different versions both import some third module? Should >> they get different versions, based on what version tags they use >> themselves? Compatibility can't be changed that easily. You either run >> on the new version, or run on the old. Not both. > > Shared C libraries face the exact same issue. Java seems pretty good on > this front as well. When there is a will, there is a way.
Shared C libraries usually do it by linking against a particular version. That's why you often need to keep multiple versions around. Once it's all binary code, there's no more compatibility question - it all runs on the same CPU. With Python code, the module's written to run on a particular interpreter, and that can't just switch around - it's like the weird and wonderful life I enjoyed as 32-bit computing started coming along, and I wanted to call on code that used the other word length... ChrisA -- https://mail.python.org/mailman/listinfo/python-list