Live data from Hacker News

Python 3.14 garbage collection rigamarole

theconsensus.dev

81–85 of 85 posts

Re: Python 3.14 garbage collection rigamarole

#81
post #30

Earlier quoted context omitted.

It's this sort of stuff that leaves me scratching my head why people like Python so much. I hear them say they prefer the syntax and personally I feel like that's such a small part of the holistic experience of working with any particular language. It's one of the reasons why I gave up on C++ years ago for .NET, the whole system of tooling in .NET has never left me feeling like I was pigeonholed into doing things in…

> Racket, CLisp Syntax really does matter more than you give it credit for. Were that not the case, I'd expect one Lisp or Scheme dialect or other to take Python's place. Outside of that counterfactual, Python's competition was stuff like Ruby, and it turned out that network effects were also pretty important.

Python's main competition was Perl. Ruby was later, I think.

Re: Python 3.14 garbage collection rigamarole

#82
post #80

Earlier quoted context omitted.

What happened in 3.13? Somehow I missed that. 2->3 was already a jump the shark incident though.

> I removed around 272 private functions and 15 private variables from the public C API (compared to Python 3.12 API). [0] https://discuss.python.org/t/c-api-my-plan-to-clarify-privat...

Thanks, what madness. CPython wasn't abandoned in favor of PyPy at the 2 to 3 transition precisely because they wanted to keep the C extensions working. So what do they do next? Break the C extensions. Genius!

Re: Python 3.14 garbage collection rigamarole

#83
post #69
post #12

Earlier quoted context omitted.

> I suspect 3.14.4 could have been tweaked slightly to address the issue without a revert I'm sure all the people that have been working on this for years would be interested in your small tweak, that they didn't think of, and would happily accept the PR!

Maybe they could have included an option to switch between GC implementations, like Java had done before. Maybe in all those years they could have thought of that.

They did think of that, and decided it's not worth the maintenance burden.

https://discuss.python.org/t/reverting-the-incremental-gc-in...

Re: Python 3.14 garbage collection rigamarole

#84
post #43

Do people use python for new projects apart from ML stuff which hasn't moved to all-native yet? My experience with Python is a really bad one for professional work: it's chaotic and slow, and has by far the worst versioning and packaging story of any mainstream language, yet its proponents keep praising it in denial. I guess Python is an ok target for agentic coding, but my god do look Claude's commit messages preten…

It's the classic worse is better. The slowest of all dynamic scripting languages. Breaking ABI's and API's left and right all the time. Not able to implement basic performance optims. Their infrastructure (pip) getting worse and worse, getting everyone to install private venv's for every app, leading to missing security updates, because updates just break everything. People just love trouble.

> Their infrastructure (pip) getting worse and worse

Hi, I'm a pip maintainer, can you please report any issue you think is happening in recent versions of pip: https://github.com/pypa/pip/

I particularly work on performance and stability and think we've been making big strides over the last two years

> getting everyone to install private venv's for every app, leading to missing security updates, because updates just break everything.

venv's stop your OS tooling from breaking, Linux distro maintainers pushed Python packaging to not allow installing into the system packages by default, and they weren't wrong.

All these other problems are solved with proper use of a lock file (which are now standardized, and you can generate and install from them in the latest version of pip), and/or use a project tool (uv, poetry, etc.).

Re: Python 3.14 garbage collection rigamarole

#85

Do people use python for new projects apart from ML stuff which hasn't moved to all-native yet? My experience with Python is a really bad one for professional work: it's chaotic and slow, and has by far the worst versioning and packaging story of any mainstream language, yet its proponents keep praising it in denial. I guess Python is an ok target for agentic coding, but my god do look Claude's commit messages preten…

I left the Python ecosystem some time ago.

Reasons: The Python 2->3 transition, asyncio package, async/await function coloring, abysmal package management, the GIL and poor performance, breakage from version to version. I'm ambivalent on type hints. I regret nothing, especially after seeing how the GC and JIT projects have been handled.

Golang addresses all of my problems with Python. Native code, good performance, an exceptional toolchain, a built-in package solution, great concurrency support, and they prioritize compatibility across versions. AI is good at writing Golang (as good as any other language I've tried), and AI benefits a lot from static types.

Post reply on HN