Tecnología · 2 min read · Oct 20, 2025

Transpilar y ejecutar código Python en un programa Go con 'Grumpy' de código abierto de Google

Google lanza el código de Grumpy como código abierto para transpilar y ejecutar Python en Go

Google anunció el miércoles un proyecto de código abierto llamado Grumpy, que es un transcompilador y tiempo de ejecución de código fuente de Python a Go que está destinado a ser un reemplazo casi directo para CPython 2.7. Es una aplicación tan creativa para Go, como lo es una transformación de los casos de uso de Python.

El servidor front-end de la compañía para YouTube y su API de YouTube están principalmente escritos en Python y se ejecutan en CPython 2.7, a diferencia de otras implementaciones (Jython, PyPy o IronPython). El proyecto comenzó por la necesidad de mejorar la ejecución de Python en YouTube, que ejecuta su front-end en CPython 2.7, para manejar bien las cargas de trabajo concurrentes.

“Grumpy no puede aprovechar la riqueza de las extensiones C de Python existentes, pero nos dio mucha flexibilidad para diseñar una API y una representación de objetos que escale para cargas de trabajo paralelas”, dijo Dylan Trotter, ingeniero de software del equipo de YouTube Engineering en Google en una publicación de blog. “Creemos que Grumpy tiene el potencial de escalar más elegantemente que CPython para muchas cargas de trabajo del mundo real.”

Según Trotter, otros tiempos de ejecución de Python no pudieron resolver el problema de la concurrencia sin introducir compensaciones insatisfactorias.

“Así que nos hicimos una pregunta loca: ‘¿Qué pasaría si implementáramos un tiempo de ejecución alternativo optimizado para el servicio en tiempo real?’” dijo Trotter. “Una vez que comenzamos a profundizar, Go parecía una elección obvia de plataforma ya que sus características operativas se alinean bien con nuestro caso de uso (por ejemplo, hilos ligeros). Queríamos interoperabilidad de lenguaje de primera clase y el poderoso sistema de reflexión de tipos en tiempo de ejecución de Go hizo que esto fuera sencillo. Python en Go se sentía muy natural, y así nació Grumpy.

“Grumpy es un tiempo de ejecución experimental de Python para Go. Traduce código Python en programas Go, y esos programas ‘transpilados’ se ejecutan sin problemas dentro del tiempo de ejecución de Go. Necesitábamos soportar una gran base de código Python existente, por lo que era importante tener un alto grado de compatibilidad con CPython (peculiaridades y todo). El objetivo es que Grumpy sea un tiempo de ejecución de reemplazo directo para cualquier proyecto de Python puro”, escribió Trotter.

Sin embargo, Trotter advierte que, aunque Grumpy ha sido recién lanzado como código abierto, sigue siendo software en grado alfa.

“La mayoría de las construcciones del lenguaje y muchos tipos incorporados funcionan como esperarías [pero] todavía hay huecos por llenar: muchos tipos incorporados carecen de métodos y atributos, faltan funciones incorporadas y la biblioteca estándar está prácticamente vacía”, dijo.

Share: X/Twitter LinkedIn

Recibe nuevas publicaciones en tu bandeja de entrada.

No spam. Cancela la suscripción en cualquier momento.