Pronto se podrá ejecutar código Python en el navegador web

A pesar de ser uno de los lenguajes de programación más populares en la actualidad, Python aún no puede ser ejecutado en un navegador web… ¡Hasta ahora! Y es que en la reciente conferencia PyCon 2022, la comunidad de «Pythonistas» han anunciado proyectos que permitirán a Python correr en el navegador web de igual manera como lo hace JavaScript.

python navegador web

Finalmente, pronto podremos correr código Python en el navegador web

La causa principal por la que Python no puede ejecutarse en un navegador web es debido a que no está soportado en los tiempos de ejecución de WebAssembly (Wasm). Es de recordar que dicho estándar de app web es usado ampliamente para compilar código escrito en Rust, C, C++ y Go y lograr así que las aplicaciones webs actúen como un programa común de escritorio.

Ahora bien, las buenas noticias vienen de parte de Christian Heimes (desarrollador) y Ethan Smith (colaborador), miembros del proyecto CPython. ¿Cuáles son estas buenas? Pues que esta implementación de Python ahora compila en Wasm mediante el uso de la herramienta Emscripten. Es importante reseñar que este conjunto de herramientas es utilizado también para compilar proyectos escritos en C o C++ a los tiempos de ejecución de Node.js o Wasm.

Por su parte, la fundación del software Python señaló lo siguiente: «Python puede ejecutarse en muchas plataformas: Linux, Windows, Apple, Macs, microordenadores e incluso dispositivos Android. Pero es un hecho ampliamente conocido que, si quieres que el código se ejecute en un navegador, Python simplemente no es bueno – tendrás que recurrir a JavaScript. Ahora, esto está a punto de cambiar».

Implementación aún en fase muy experimental

Si bien durante el evento PyCon 2022 se demostró todo el potencial que hay en esta nueva implementación en CPython, la fundación advirtió que aún está en un nivel muy experimental. Esto, obviamente, es debido a la falta de módulos que hay actualmente en la biblioteca estándar de Python para hacer uso de este nuevo soporte.

Pyodide, otra implementación para ejecutar código Python desde un navegador web

Además del soporte para Wasm en CPython, también se anunció en la PyCon 2022, el nuevo sistema Pyodide. Este proyecto desarrollado por la gente de Anaconda permitirá a los desarrolladores escribir y correr código Python en HTML, así como también hacer llamadas a las bibliotecas de Js mediante PyScript. De hecho, con esta implementación se puede escribir un sitio web usando Python.

«Es un sistema para intercalar Python en HTML, como PHP. Permite a los desarrolladores escribir y ejecutar código Python en HTML, y llamar a bibliotecas Javascript en PyScript. Este sistema permitirá escribir un sitio web completamente en Python.» Afirmó Peter Wang, cofundador y director general de Anaconda.

Pyodide formó parte del proyecto (actualmente abandonado) Iodide de Mozilla y actualmente se ofrece como un proyecto independiente y de código abierto. Si bien su enfoque es hacia la computación de datos, este sistema permite hacer trabajos de modelado estadístico y visual en el navegador web utilizando bibliotecas clave de Python tales como: Numpy, Pandas y Matplotlib.

De acuerdo con su equipo de desarrollo, Pyodide permite instalar y ejecutar paquetes de Python puro en el navegador web gracias al uso de micropip. Con ello, se podrá compilar el código Python y sus bibliotecas esenciales a WebAssembly utilizando Emscripten. Otro aspecto a destacar de Pyodide es que es totalmente compatible con Python 3.10 y ya se está trabajando para hacerlo compatible con la próxima versión 3.11

Vía: ZDnet