https://jython.readthedocs.io/en/latest/Concurrency/#no-glob...
https://wiki.python.org/moin/IronPython
The difference between JVM, CLR and C in regards to parallel and concurrent code is that they are built for those kind of workloads, and have a memory model proper, hence not needing a GIL.
CPython built with --disable-gil does not have a GIL (as long as PYTHONGIL=0 and all loaded C extensions are built for --disable-gil mode) https://peps.python.org/pep-0703/#py-mod-gil-slot
"Intent to approve PEP 703: making the GIL optional" (2023) https://news.ycombinator.com/item?id=36913328#36917709 https://news.ycombinator.com/item?id=36913328#36921625
How CPython accomplished nogil in their - the original and reference - fork is described in the topical linked PEP 703.
It's possible to have a language that doesn't have a GIL, which you implement Python in, but that Python implementation then has a GIL.
The point being that you can't say things like: Jython is written in Java so it doesn't have a GIL. CPython is written in C so doesn't have a GIL. And so on.
If this isn't clear, I apologize.
But are there even nogil builds of CPython C extensions on PyPi yet anyway.
Re: Ghidraal and various methods of Python in Java: https://news.ycombinator.com/item?id=36454485