I wanted to get some thoughts on Cinder, the performance-focused version of Python that powers Instagram. I understand that one of the reasons for open-sourcing it was to encourage discussions about potentially incorporating some of its features into CPython and to minimize repetitive efforts among those working on CPython's performance. It's been around for a while now, so I'm curious why more of its advancements haven't made their way upstream to CPython. Their JIT-compiler approach seems particularly valuable!
2 Answers
Some work from Cinder has actually been incorporated into CPython. Meta is one of the key players pushing significant changes upstream. For instance, the nogil feature, which enables free threading, is one notable effort that’s been integrated into CPython.
That’s interesting! I thought nogil was originally from Cinder. Seems like there’s a lot of crossover.
There's definitely some behind-the-scenes drama. Some companies, like Microsoft, have different priorities and want to push their own ideas for improving Python. This has led to a bit of a political tussle in the community. On the flip side, Cinder has had some success: features like immortalization from Cinder eventually made it into Python through PEP 683, which shows there's a pathway for good ideas to get adopted.
I remember something about Microsoft having a similar team that got laid off. Did that affect the process? I think I saw a post about it!