Geração de Código Determinística vs Probabilística: Por Que a Conversão para Rust com Vibe-Coding do Bun Levanta Bandeiras Vermelhas

Noah Hall, escrevendo para The Tech Enabler, traça uma linha nítida entre geração de código determinística e probabilística. Ele usa a recente conversão "vibe-coded" de um milhão de linhas de código do Bun de Zig para Rust como um conto de advertência. Seu argumento central: sistemas determinísticos produzem resultados consistentes e revisáveis; LLMs introduzem incerteza que torna a revisão de código impossível em escala.
Geração de Código Determinística
Hall aponta para ferramentas determinísticas estabelecidas: o 2to3 do Python para migração de Python 2→3, e transpiladores para linguagens como Elm, PureScript e TypeScript que sempre produzem o mesmo JavaScript. Sua própria linguagem Derw pode gerar JavaScript, TypeScript ou Inglês; Tegan gera JavaScript ou Go; Mojie tem como alvo JavaScript, Python ou Inglês. Todos são baseados em transformação AST-para-AST — dado a mesma entrada, você sempre obtém a mesma saída. Consistência importa: "Se um bug é consistente, podemos corrigi-lo. Se um bug é inconsistente, fica exponencialmente mais difícil de corrigir."
Geração de Código Probabilística
LLMs variam a saída a cada execução — às vezes A, às vezes B. Hall criou o neuro-lingo há três anos como uma paródia: humanos escrevem apenas assinaturas de funções e comentários, e LLMs geram a implementação do zero a cada compilação. Um exemplo:
function add(a: number, b: number): number {
// Adicionar dois números
}
function main() {
// Imprimir "Hello World" no console
// Imprimir o resultado de add(2, 3)
}"Toda vez que neuro-lingo é compilado, o código é gerado do zero pelos LLMs. É ligeiramente diferente a cada vez. Às vezes introduz bugs. Às vezes é limpo e simples. Às vezes é caótico." Hall argumenta que fluxos de código totalmente orientados por IA estão fazendo exatamente isso, mas enviando para produção com responsabilidade humana.
A Falácia dos "Existem Testes"
Testes sozinhos não podem garantir qualidade. Hall cita o SQLite como o código mais testado: 155,8 KSLOC de código C vs. 92.053,1 KSLOC de código de teste (590× mais). Apesar de 100% de cobertura de ramos, milhões de casos de teste e extensos harnesses, o SQLite ainda depende de revisão humana. "Não é possível para um humano revisar 1 milhão de linhas de mudanças em 9 dias. O Bun não revisou o código que mesclou ao master."
Hall conclui que a geração de código determinística ainda precisa de validação, e a geração probabilística cria risco que escala com a contagem de linhas. O artigo fonte aprofunda cada exemplo.
📖 Leia a fonte completa: HN AI Agents
👀 See Also

Ferramentas de IA Podem Levar a Resultados Homogeneizados em Trabalhos Criativos e de Desenvolvimento
Um usuário do Reddit relata que várias equipes usando ferramentas de IA como ChatGPT, Co-Pilot e Claude para roadmaps estratégicos e desenvolvimento de software estão produzindo resultados semelhantes com padrões idênticos de jargões e estruturas de design.

Claude perde a capacidade de recuperar preços de produtos em diferentes varejistas
A partir de 27 de abril, Claude não retorna mais preços para Amazon, Best Buy, Newegg ou B&H Photo. Walmart é o único varejista que ainda mostra preços.

Implantação Simplificada: Nova Configuração AWS com Um Clique para Open Claw Lançada
Os entusiastas do Open Claw agora têm um motivo para comemorar. Uma nova ferramenta de implantação em um clique na AWS simplifica o processo de configuração do Open Claw, tornando-o mais acessível para desenvolvedores e entusiastas.

HC1 de Taalas: Acelerando Inferência de IA com Silício Personalizado
A Taalas revela a plataforma HC1, oferecendo a inferência de IA mais rápida e de baixo custo do mundo por meio de design de hardware específico para modelos. Alcança 17 mil tokens/segundo no Llama 3.1 8B.