logoalt Hacker News

orian01/21/20251 replyview on HN

To not repeat other's (Python) mistakes ;-)


Replies

phire01/21/2025

The the introduction of Python 3 wasn't a mistake. The mistake was discontinuing Python 2.

Just look at how rust does it. Rust 1.0 code still works in the latest version of rustc, you just need to set the project to the Rust 2015 edition. You can even mix-and-match editions, as each crate can have a different edition. Newer versions of rustc will always support all previous editions, and breaking changes are only ever introduced when a new edition is released every 3 years. If the crate is stable, no real reason to upgrade, it will work forever. And if you do need to update a project, you can split it into multiple crates and do it incrementally.

Just imagine how much smoother the python 3 transition would have been if you could transition projects incrementally, module by module as needed.

show 2 replies