Tecnologia · 2 min read · Oct 20, 2025

Transpile e Execute Código Python em Programa Go com o ‘Grumpy’ de Código Aberto do Google

Google libera código do Grumpy para transpilar e executar Python em Go

O Google anunciou na quarta-feira um projeto de código aberto chamado Grumpy, que é um transcompilador e tempo de execução de código-fonte Python para Go, destinado a ser uma substituição quase direta para o CPython 2.7. É uma aplicação tão criativa para Go quanto uma transformação dos casos de uso do Python.

O servidor front-end da empresa para o YouTube e sua API do YouTube são principalmente escritos em Python e executados no CPython 2.7, ao contrário de outras implementações (Jython, PyPy ou IronPython). O projeto começou a partir da necessidade de melhorar a execução do Python no YouTube, que executa seu front-end no CPython 2.7, para lidar bem com cargas de trabalho concorrentes.

“Grumpy não pode aproveitar a riqueza de extensões C existentes do Python, mas nos deu muita flexibilidade para projetar uma API e uma representação de objeto que escalam para cargas de trabalho paralelas”, disse Dylan Trotter, engenheiro de software da equipe dentro da Engenharia do YouTube no Google em um post no blog. “Achamos que o Grumpy tem o potencial de escalar de forma mais elegante do que o CPython para muitas cargas de trabalho do mundo real.”

De acordo com Trotter, outros tempos de execução do Python não conseguiram resolver o problema de concorrência sem introduzir compromissos insatisfatórios.

“Então, nos fizemos uma pergunta louca: ‘E se implementássemos um tempo de execução alternativo otimizado para atendimento em tempo real?’” disse Trotter. “Uma vez que começamos a descer pela toca do coelho, Go parecia uma escolha óbvia de plataforma, já que suas características operacionais se alinham bem com nosso caso de uso (por exemplo, threads leves). Queríamos interoperabilidade de linguagem de primeira classe e o poderoso sistema de reflexão de tipo em tempo de execução do Go tornou isso direto. Python em Go parecia muito natural, e assim o Grumpy nasceu.

“Grumpy é um tempo de execução experimental do Python para Go. Ele traduz código Python em programas Go, e esses programas ‘transpilados’ são executados perfeitamente dentro do tempo de execução do Go. Precisávamos suportar uma grande base de código Python existente, então era importante ter um alto grau de compatibilidade com o CPython (quirks e tudo). O objetivo é que o Grumpy seja um tempo de execução substituto para qualquer projeto puramente Python,” escreveu Trotter.

No entanto, Trotter alerta que, embora o Grumpy tenha sido recém-liberado como código aberto, ele continua sendo um software em estágio alpha.

“A maioria dos construtos da linguagem e muitos tipos embutidos principais funcionam como você esperaria [mas] ainda há buracos a serem preenchidos — muitos tipos embutidos estão faltando métodos e atributos, funções embutidas estão ausentes e a biblioteca padrão está virtualmente vazia,” disse ele.

Share: X/Twitter LinkedIn

Receba novas postagens na sua caixa de entrada

Sem spam. Cancele a assinatura a qualquer momento.