Contexto e objetivo do benchmark
\n
O desenvolvedor e committer Ruby Yusuke Endoh conduziu um benchmark inédito para avaliar a eficiência da geração de código pela IA Claude Code (versão Opus 4.6) em 13 linguagens de programação distintas. O experimento, realizado com 600 execuções, teve como tarefa a implementação simplificada de funcionalidades do Git, dividida em duas fases, com o intuito de medir velocidade e custo de geração, além da estabilidade das soluções produzidas.
\n\n
Metodologia aplicada
\n
A tarefa consistiu na criação de um sistema simplificado de controle de versões, implementando inicialmente os comandos init, add, commit e log (fase 1), e posteriormente estendendo o projeto para incluir status, diff, checkout e reset (fase 2). Cada linguagem foi testada 20 vezes, totalizando 600 execuções.
\n
Para evitar distorções causadas por dependências de bibliotecas externas, o autor substituiu o algoritmo padrão SHA-256 por um algoritmo de hash próprio e simplificado, garantindo que as diferenças observadas fossem atribuídas principalmente à linguagem e não a seus ecossistemas.
\n\n
Principais resultados do benchmark
\n
- \n
- Linguagens dinâmicas lideram em custo e velocidade: Ruby, Python e JavaScript foram as mais rápidas e econômicas, com custos por execução entre US$ 0,36 e US$ 0,39, e tempos médios variando de 73 a 81 segundos.
- Linguagens estaticamente tipadas apresentam maiores custos e variações: Go, Rust e C foram significativamente mais lentas e caras, com custos até 2,6 vezes maiores e maior variância nos tempos de execução. C, por exemplo, gerou 517 linhas de código em média, contra 219 de Ruby, impactando o custo.
- Adição de verificadores de tipos em linguagens dinâmicas causa penalidades consideráveis: Por exemplo, a inclusão do mypy para Python aumentou o tempo em 1,6 a 1,7 vezes, enquanto o uso do Steep para Ruby provocou um atraso entre 2,0 e 3,2 vezes.
- TypeScript é mais caro que JavaScript puro: Apesar de gerar quantidade semelhante de código, TypeScript teve custo médio de US$ 0,62 por execução, contra US$ 0,39 do JavaScript.
\n
\n
\n
\n
\n\n
Discussões e limitações apontadas pelo autor
\n
Endoh reconhece seu viés como committer Ruby e ressalta que o benchmark aborda prototipagem de pequena escala (~200 linhas de código), o que limita a extrapolação para projetos maiores, onde tipagem estática pode ser vantajosa. Ele também destaca que o estudo foca apenas em custo e velocidade de geração, não avaliando qualidade, manutenibilidade ou desempenho em tempo de execução.
\n
Comentários na comunidade levantaram pontos relevantes, como a dificuldade de generalizar conclusões para protótipos maiores, a relevância do ecossistema de pacotes para reduzir código gerado, e o papel dos sistemas de tipos rigorosos na prevenção precoce de erros, que pode justificar falhas detectadas em Rust e Haskell.
\n
Sobre a diferença de velocidade, Endoh argumenta que, no desenvolvimento iterativo assistido por IA, aguardar 30 segundos em vez de 60 pode impactar o fluxo do desenvolvedor, mas admite que avanços futuros podem reduzir esses tempos para níveis quase instantâneos.
\n\n
Repositório e dados abertos
\n
Todo o código-fonte gerado, logs de execução e resultados detalhados estão disponíveis no repositório GitHub do benchmark, permitindo transparência e replicação do estudo.
\n\n
Implicações práticas para equipes de desenvolvimento
\n
Este estudo fornece insights valiosos para equipes que utilizam IA para geração de código, principalmente em fases iniciais de prototipagem. A escolha de linguagens dinâmicas pode resultar em economia de tempo e custo, enquanto a adoção de tipagem estática, apesar de trazer benefícios de segurança, pode impactar a agilidade e o custo do processo.
\n
As equipes devem ponderar essas trade-offs conforme o estágio do projeto e necessidades específicas, lembrando que a maturidade das ferramentas e modelos de IA pode alterar essas dinâmicas no futuro próximo.
\n\n
Links úteis
\n
