I think the main problem we have at the core of Python is that it’s heavily inspired by C. But I think in this case it’s Python’s weakness.
.. There are hundreds of companies running Python code as glue logic – and that’s single-threaded synchronous code (check how popular Django is) yet somehow those companies handle tens of thousands of users.
I think that if we want to support full concurrency in Python, this is the way to go. Introduce primitives for fully lockless paradigm using queues and enable programmers to define queues.
Most of it is already implemented in Celery. To have that in Python we’d need to extend the interpreter to manage workers and queues as they’re needed, add some syntax sugar to enable nested tasks definition and dispatch and you’re mostly good to go.