Re: I like Python and C
SE has some extremely toxic individuals, esp in the
G... police that moderates it
As to 2 vs 3 an analogy might help: DOS’s 640k RAM limit.
Some design decisions were, in hindsight, wrong. ‘print’ - statement rather than ‘print()’ - expression, for example . Means you can’t ‘[print(x) for c in x]’.
Revisiting them was considered better than enshrining them forevermore. Guido, who in temperament is very consensual - dictator is a bit of a Monty P joke - has mused that 3.x would be handled differently in hindsight.
Now, you can write 90% matching 2-3 code on 2.7, which is intended as a transitional 2.x bringing as much of 3 as possible. There are automated converters. Almost all of core lib packages written on 3, if they do not rely on 3’s internals, get backported into 2.7. Being careful, you can use special scaffolding that keeps your code running on 2 and 3.
The problem was less the language incompatibilities _for your code_ as the existence or not of your core dependency packages (ORMs, web frameworks..) in 3. Plus, for the first 3-4 years 3.x was slower by 10-20%.
So... much later, a cleaner language. How many times do we techies regret cruft and inconvenience kept in the name of backward compatibility? Yet, for all that, it was a traumatic birth and unlikely to be repeated in a 4.x release.