Linux 0.11 reescrito em Rust idiomático, inicia no QEMU
Um kernel Linux 0.11 inicial foi reescrito em Rust idiomático e conseguiu iniciar no QEMU, provocando debate sobre o tamanho do código, a legibilidade e se a segurança e as abstrações de Rust justificam a complexidade adicional. Muitos suspeitam que grandes partes foram geradas por IA, levantando questões sobre o valor educacional, a autenticidade e a manutenção de longo prazo dessas reescritas. De forma mais ampla, os comentadores discutem a crescente tendência de “Rustificar” bases de código C e Zig existentes com assistência de LLM, ponderando segurança de memória e modernização contra hype, dependência de ferramentas e fadiga cultural.
Escopo da Reescrita e Contagem de Linhas
- Comentadores observam que o repositório em Rust tem muito mais linhas do que as fontes C originais (inicialmente ~50k vs ~8–12k SLOC).
- Outros apontam que:
- Uma divisão mostra ~15k linhas para o kernel; o restante são ferramentas, utilitários e programas do userland.
- Comentários, testes e abstrações extras em Rust contribuem para o tamanho.
- As diferenças de verbosidade são debatidas: alguns veem Rust como mais explícito/verbooso, outros dizem que ele pode ser tão conciso ou mais curto que C para funcionalidades equivalentes.
Envolvimento de IA e Preocupações com “Slopware”
- Vários comentadores suspeitam que grandes partes foram geradas por um LLM (com base no estilo do README, emojis e a linguagem de “abstrações idiomáticas”).
- Alguns veem isso como aceitável ou até ideal para um projeto de brinquedo / prova de conceito que ninguém executará em produção.
- Outros se frustram com “projetos de token” gerados por IA, vendo-os como autopromoção de baixo esforço e menos impressionantes do que reescritas feitas por humanos.
- Há preocupação de que reescritas por IA muitas vezes apenas movem padrões inseguros para “unsafe Rust”, sem ganhos reais de segurança.
Idiomaticidade, Legibilidade e Segurança do Rust
- Alguns comentadores consideram a implementação do fork em Rust semelhante ou até mais curta que a de C para syscalls específicas (por exemplo,
fork). - Outros criticam a versão em Rust como “onerosa”:
- Muitas linhas servem a abstrações, tratamento de erros ou restrições da linguagem, em vez da lógica central.
- O uso pesado de closures aninhadas e inferência de tipos complexa é visto como prejudicial à legibilidade e exigindo ferramentas robustas.
- Defensores argumentam que os enums explícitos, tipos e borrow checking do Rust reduzem classes de bugs e podem justificar reescritas.
Propósito e Valor do Projeto
- É amplamente reconhecido como um esforço de brinquedo / educacional / prova de conceito (Linux 0.11 não é praticamente útil hoje).
- Alguns veem valor em:
- Demonstrar que um kernel pode ser “Rustificado”.
- Explorar reescritas em larga escala assistidas por IA e fluxos de trabalho.
- Outros argumentam que o valor educacional se perde se um LLM fez a maior parte da codificação.
Reação Mais Ampla Contra Rust e LLMs
- Vários comentários expressam fadiga com:
- Anúncios constantes de “X reescrito em Rust”.
- A combinação de evangelização de Rust e reescritas geradas por IA.
- Contra-argumentos enfatizam:
- O papel crescente de Rust substituindo C inseguro, inclusive em userland e kernels.
- Que experimentação e projetos paralelos “divertidos” ainda devem ser incentivados.