Overview
Explore the journey of porting Python to WebAssembly in this informative conference talk. Dive into the challenges and achievements of implementing CPython support for WASM platforms Emscripten and WASI. Learn about the build system improvements, cross-compiling enhancements, and the resolution of invalid assumptions and bugs in both Python and Emscripten. Discover the process of establishing Tier 3 support, implementing build automation, and creating unofficial builds with nightly smoke tests. Gain insights into WASI challenges, executable documentation, and examples, as well as the complexities of Python binary extensions. Understand how Python itself serves as a smoke test in this comprehensive overview of the WebAssembly porting process.
Syllabus
Intro
CPython implementation
Build system
Cross compiling improvements
Invalid assumptions
Bugs in Python
Bugs in Emscripten
Improving Emscripten
Tier 3 support (PEP 11)
Build automation
Unofficial builds & nightly smoke tests
WASI challenges
Executable docs and examples
Python binary extension hell
Use Python as smoke tests
Taught by
CNCF [Cloud Native Computing Foundation]