PyPy.js is an experiment in building a fast, compliant, in-browser python interpreter. By compiling the PyPy interpreter into javascript, and retargeting its JIT compiler to emit asmjs code at runtime, it is possible to run python code in the browser at speeds competitive with a native python environment. This talk will demonstrate the combination of technologies that make such a thing possible, the results that have been achieved so far, and the challenges that still remain when trying to take python onto javascript's home turf.
We'll cover: an overview of PyPy and why it's a good fit for this type of project; an introduction to asmjs and the rise of javascript as a compile target; what it looks like when you smoosh these two technologies together; a comparison with other approaches such as brython; and some concrete suggestions for how the result might be useful in practice.
Ryan is a software developer based near Melbourne, Australia. He has been programming in Python for ten years and despite frequent sojourns into other languages, he has always returned to Python for its unique combination of expressiveness, readability and strong sense of community.
After trying his hand at contract development work, the local startup scene, and even a few years dabbling in academia, he now builds high-performance Web APIs with the Mozilla Cloud Services team.