DragonEgg (LLVM no GCC) também já consegue compilar a si próprio
| Tweet |
|
Duas semanas depois da notícia de que o compilador livre Clang tornou-se capaz de compilar a si próprio efetivamente (um marco importante no histórico de qualquer compilador), chega a informação de que o DragonEgg também alcançou o mesmo feito.
Ambos (DragonEgg e Clang) fazem parte do bojo do LLVM, uma infra-estrutura de compilação, desenvolvida em C++ e sob uma licença permissiva de software livre, projetada para otimização em tempo de compilação, linkedição e execução de programas em variadas linguagens (originalmente C e C++, mas já expandida para uma série de outras, tais como Objective C, Fortran, Ada, Haskell, bytecode Java, Python, Ruby, ActionScript).
Mas ao contrário do Clang, que é um compilador independente, o DragonEgg é uma forma de substituir a otimização e a geração de código do GCC pela do LLVM, por meio de um plugin.
Trata-se de um projeto em andamento que ainda tem muitos marcos e barreiras a ultrapassar antes de ser usado em produção, mas a notícia de que ele já é capaz de compilar a si próprio completamente certamente é um idicativo do seu progresso.
E, no caso de uma infra-estrutura híbrida como é o caso (gcc + llvm + dragonegg), vale lembrar que o “compilar a si mesmo” neste caso significa usar o DragonEgg para compilar os 3 componentes (gcc, llvm e dragonegg), e aí usar os executáveis resultantes para compilar os 3 novamente, e chegar mais uma vez a executáveis corretos.
• Link direto para este post: http://br-l.org/!18548
• Siga no Twitter: @brlinuxblog e @augustocc
• Mais posts do mesmo tema: Desenvolvedores









Muito boa noticia!
My God ! Que loucura isto … praticamente um loop infinito na compilação !
Muito bom…
Um brinde ao LLVM!