module dependencies issues
Marko Rauhamaa
marko at pacujo.net
Thu Jul 9 20:04:57 EDT 2015
Chris Angelico <rosuav at gmail.com>:
> Your descriptions conflict. A safe binary replacement usually cannot
> even add new features, in case this breaks something.
Linus Torvalds is adamant about maintaining ABI compatibility across
Linux versions. That hasn't prevented him from accepting numerous new
system calls. New functions in C libraries do not cause runtime
breakage.
> Consider what happens when Python creates a new keyword; it's a new
> feature, old functionality hasn't been broken, but if that word had
> been used anywhere as an identifier, it's now broken.
You are right about adding keywords; they break backward-compatibility
(except in Perl, where keywords and names are in different namespaces,
or Scheme, which doesn't have keywords).
> There is NO CHANGE which is perfectly backward-compatible.
That statement is untrue in theory, and even more untrue in practice.
Marko
More information about the Python-list
mailing list