Canonical patrocina a tradução de IA de C para Rust - o open source passa à ofensiva de memória

Seguimento do caso : IA vs libristes : la fracture s'installe dans l'open source· Episódio 6/9

Dev & Code Aug 24, 2026Adicionar aos favoritos

Canonical patrocina a tradução de IA de C para Rust - o open source passa à ofensiva de memória

Ubuntu por trás de um projeto de conversão automática C→Rust assistida por IA. O objetivo: Rust realmente seguro, não apenas código que compila sem *unsafe* por toda parte.

O caso concreto

Parta de um bug clássico: um buffer overflow em um daemon de sistema escrito em C. Corrigível, mas que pode reaparecer de forma diferente seis meses depois porque C não pode garantir mecanicamente a ausência desse tipo de erro. Agora imagine esse mesmo código reescrito em Rust — onde o compilador torna esse bug estruturalmente impossível. Essa é a ambição que a Canonical (editora do Ubuntu) apoia financeiramente: traduzir automaticamente milhões de linhas de C em Rust seguro, com a ajuda da IA.

Por que isso não é trivial

A tradução automática C→Rust já existe — a ferramenta c2rust faz isso há anos. O problema: ela produz Rust sintaticamente válido, mas unsafe por toda parte. O que anula exatamente o interesse do ponto de vista da segurança de memória. Mudou-se a sintaxe sem mudar as garantias.

O que o projeto apoiado pela Canonical almeja é Rust idiomático e seguro: código que aproveita o sistema de tipos do Rust (ownership, borrowing, lifetimes) para expressar e verificar os invariantes de segurança em tempo de compilação. Isso é fundamentalmente difícil porque C e Rust não compartilham os mesmos modelos mentais:

// C - correto ou use-after-free dependendo do contexto de uso
char* get_value(struct Map* m, const char* key) {
 return hashmap_get(m, key); // ponteiro potencialmente inválido se m for modificado
}
// Rust - o compilador impede a modificação de m durante o empréstimo
fn get_value<'a>(m: &'a HashMap<&str, String>, key: &str) -> Option<&'a String> {
 m.get(key) // validade do lifetime garantida pelo compilador
}

A IA deve entender que essas duas funções não são mecanicamente equivalentes — e que uma tradução ingênua produziria um bloco unsafe, não uma verdadeira migração.

O subtexto: IA no open source, próximo ato

Aqui ecoa diretamente o debate que agita o software livre. Linus Torvalds decidiu pelo núcleo Linux: contribuições assistidas por IA são bem-vindas, os opositores podem fazer fork. A Canonical segue a mesma lógica pragmática — a IA como ferramenta de modernização em massa, não como ameaça à integridade.

A verdadeira questão permanece a validação humana: quem revisa o Rust gerado? Quem garante que a semântica do C original foi preservada, inclusive seus comportamentos em limites? Uma ferramenta que gera 95% de Rust correto e 5% de código sutilmente incorreto é mais perigosa do que uma ferramenta 100% unsafe — porque dá uma falsa garantia.

O que se espera

Se o projeto cumprir suas promessas, será um avanço considerável na transição das camadas de sistema para Rust — movimento já em andamento (Android, Windows, núcleo Linux, OpenSSL). A Canonical, ao mirar no Ubuntu, afeta diretamente as camadas baixas de milhões de servidores em produção.

Para lembrar

A Canonical apoia a tradução de C para Rust em larga escala com IA, visando Rust idiomático e seguro — não apenas sintaticamente válido como o c2rust. O desafio: demonstrar que a IA pode entender a semântica de memória, não só a sintaxe. Acompanhe se você mantém código crítico de sistema em C.

Resources

Artigo produzido por inteligência artificial, revisto sob controlo editorial humano.

A nossa redação
Your Linux server, as a desktop.
TermalOSSponsored
Ops, reimagined

Your Linux server, as a desktop.

Agentless SSH monitoring, a full remote desktop and an AI ops copilot — no agents to install, everything stays on your machine.

SSHSelf-hostedAI Ops
Get early access
Este artigo foi-lhe útil?

4 pessoas gostaram deste artigo

Gosto
K
Kaito KuroganeSenior Dev Writer
Senior polyvalent developer, backend Go + frontend TS, open source contributor.
Partilhar:
Your Linux server, as a desktop.
TermalOSSponsored
Ops, reimagined

Your Linux server, as a desktop.

Agentless SSH monitoring, a full remote desktop and an AI ops copilot — no agents to install, everything stays on your machine.

Get early access
LIVERadio Geek Kitsune
Toca para ouvir, o mesmo som para todos
0··
// Programa
// all stations
// partilhar uma faixa →
Secções
Explorar
Informações