Ethan Furman wrote:
Um -- how can you have on the one hand "completely not compatible" and
on the other "code that can cross-execute on either version"?

Great question ! .. .it has to do with education.

... if you learn 2.x (only) and attempt to program on the 3.x platform, (without helps, education, migration tools, etc) you will fail... and you will be frustrated. Why? 3.x is not compatible with 2.x knowledge.

If you learn 3.2 (only) and attempt to program on 2.x you will fail, and you will be frustrated. Why? Because the two languages are different and incompatible.

Now then, can you learn both?... sure. Can you migrate one to the other with enough knowledge and effort?... yup. Is it possible (with enough cleverness) to write code that will run on "both" without modification... yes... Are the two languages compatible? No!


Where this really counts of course is real-world apps. It is relatively easy to write trivial code blocks that demonstrate that nothing has changed in 3.x/ ... and they are *all* misleading. The truth is that hundreds of details have changed making the two 'versions' actually different languages.


If I use the '89 version (1) K&R to write a C program, and compile it on the current gcc without mods it will run. If I use the 2.5 python manual to write a python program and try to run it on 3.2 it will fail (for many, many reasons). This is my definition of completely incompatible. The two languages are different; period.

The problem is that they "look" similar.     :)



kind regards,
m harris




--
http://mail.python.org/mailman/listinfo/python-list

Reply via email to