Ethan Smith, einer der Hauptentwickler von MyPyC, dem Compiler fĂŒr Python-Module in C-Code, berichtete ĂŒber die HinzufĂŒgung von Ănderungen zur Codebasis von CPython (der Basisimplementation von Python), die es ermöglichen, die Hauptversion von CPython fĂŒr die AusfĂŒhrung im Browser zu kompilieren, ohne dass zusĂ€tzliche Patches erforderlich sind. Der Build erfolgt in universellen niedrigstufigen Zwischencode WebAssembly mit dem Compiler Emscripten.

Die Arbeit wurde von Guido van Rossum, dem Schöpfer der Programmiersprache Python, genehmigt, der zusĂ€tzlich vorschlug, die UnterstĂŒtzung fĂŒr Python in den Web-Service github.dev zu integrieren, der eine interaktive Entwicklungsumgebung bietet, die vollstĂ€ndig im Browser ausgefĂŒhrt wird. Jonathan Carter von Microsoft erwĂ€hnte, dass derzeit an der Implementierung der UnterstĂŒtzung fĂŒr die Programmiersprache Python in github.dev gearbeitet wird, wobei im vorhandenen Prototyp der Jupyter-Computing-Umgebung fĂŒr github.dev das Projekt Pyodide (Build von Python 3.9 Runtime in WebAssembly) verwendet wurde.
In der Diskussion wurde auch das Thema der Montage von Python mit UnterstĂŒtzung fĂŒr WASI (WebAssembly System Interface) angesprochen, um eine WebAssembly-Darstellung von Python ohne Bindung an den Webbrowser zu verwenden. Es wird angemerkt, dass die Umsetzung einer solchen Möglichkeit viel Arbeit erfordern wird, da im WASI keine Implementierung der API pthread bereitgestellt wird und in Python die Möglichkeit der Erstellung ohne Einbeziehung von Multithreading eingestellt wurde.
Quelle: opennet.ru
