Ethan Smith, een van de belangrijkste ontwikkelaars van MyPyC, de compiler van Python-modules naar C-code, meldde dat er wijzigingen zijn aangebracht in de codebasis van CPython (de basisimplementatie van Python) die het mogelijk maken om de hoofdvertakking van CPython te bouwen voor gebruik in de browser, zonder extra patches. De build wordt uitgevoerd naar een universele, low-level tussenliggende code in WebAssembly met behulp van de Emscripten-compiler.

Het werk is goedgekeurd door Guido van Rossum, de maker van de programmeertaal Python, die verder heeft voorgesteld om ondersteuning voor Python te integreren in de webservice github.dev, die een interactieve ontwikkelomgeving biedt die volledig in de browser werkt. Jonathan Carter van Microsoft heeft vermeld dat er momenteel gewerkt wordt aan de implementatie van Python-ondersteuning in github.dev, maar in het huidige prototype van de Jupyter-rekenomgeving voor github.dev werd het Pyodide-project gebruikt (een build van de Python 3.9-runtime in WebAssembly).
In de discussie kwam ook het onderwerp aan bod van de build van Python met ondersteuning voor WASI (WebAssembly System Interface) om een WebAssembly-representatie van Python zonder binding aan de webbrowser te gebruiken. Het wordt opgemerkt dat de implementatie van deze mogelijkheid veel werk zal vereisen, aangezien er in WASI geen implementatie van de pthread API wordt geboden en in Python de mogelijkheid om te bouwen zonder multithreading is stopgezet.
Bron: opennet.ru
