In the recent years we saw an explosion of usage of Python in the browser:
Pyodide, CPython on WASM, PyScript, etc. All of this is possible thanks to the
powerful functionalities of the underlying platform, WebAssembly, which is essentially a virtual CPU
inside the browser.
In the recent years we saw an explosion of usage of Python in the browser:
Pyodide, CPython on WASM, PyScript, etc. All of this is possible thanks to the
powerful functionalities of the underlying platform, WebAssembly.
In this talk we will examine what is exactly WebAssembly, what are the strong
and weak points, what are the limitations and what the future will bring us.
We will also see why and how WebAssembly is useful and used outside the
browser.
This talk is targeted to an intermediate/advanced audience: no prior knowledge of
WebAssembly is required, but it is required to have a basic understanding of what is a compiler, an interpreter and the concept of bytecode.
The introduction will cover the basics to make sure that the talk is
understandable also by people who are completely new to the WebAssembly world,
but after that we will dive into the low-level technical details, with a
special focus on those who are relevant to the Python world, such WASI vs
emscripten, dynamic linking, JIT compilation, interoperability with other
languages, etc.