Um novo compilador Python de alto desempenho acaba de chegar por meio da startup Exaloop. A empresa twittou sobre o lançamento do código do projeto Codon, que desenvolve um compilador para a linguagem Python que pode gerar código de máquina puro como saída, não vinculado ao tempo de execução do Python. Segundo a Exaloop, o Codon é um novo compilador Python de alto desempenho.
O compilador é desenvolvido pelos autores da linguagem Seq semelhante ao Python. Seria, portanto, uma continuação de seu desenvolvimento. O projeto também oferece um tempo de execução próprio para arquivos executáveis e uma biblioteca de funções que substitui as chamadas de biblioteca na linguagem Python.
Codon é um novo compilador Python de alto desempenho. Sobre o Codon
O desempenho dos executáveis de saída é considerado próximo ao de programas escritos na linguagem C. Comparado ao uso do CPython, o ganho de desempenho ao compilar com Codon é estimado em 10 a 100 vezes para execução única. Ao mesmo tempo, ao contrário do Python, o Codon implementa adicionalmente a possibilidade de usar multithreading, o que permite obter um aumento ainda maior no desempenho. Codon também permite compilar no nível da função para usar a visualização compilada em projetos Python existentes.
VAI GOSTAR: 10 ideias que todos os desenvolvedores deveriam fazer em 2023
Aposte na Mega da Virada 2024!
Prepare-se para uma chance única de mudar sua vida. O prêmio histórico de R$ 600 milhões da Mega da Virada 2024 está esperando por você!
Além disso, conheça os bolões da Sorte Online, que são os mais premiados e oferecem as melhores chances de ganhar! Ao participar dos bolões, você se junta a centenas de apostadores e aumenta suas chances de faturar uma bolada.
Faça sua Aposta AgoraO Codon é construído usando uma arquitetura modular que permite estender a funcionalidade por meio de plug-ins que podem adicionar novas bibliotecas, implementar otimizações de compilador e até fornecer suporte para sintaxe adicional.
Por exemplo, vários plugins estão sendo desenvolvidos em paralelo para uso em bioinformática e matemática financeira. O coletor de lixo Boehm é usado para gerenciamento de memória.
Mais detalhes
O compilador suporta a maior parte da sintaxe do Python, mas a compilação em código nativo impõe uma série de limitações que impedem que o Codon seja usado como um substituto transparente para o CPython. Por exemplo, Codon usa o tipo int de 64 bits para inteiros, enquanto CPython tem inteiros ilimitados.
O suporte de códon para grandes bases de código pode exigir alterações de código. As incompatibilidades são normalmente causadas pela falta de implementação de Codon de certos módulos Python e pela incapacidade de usar alguns dos recursos dinâmicos da linguagem. Para cada uma dessas incompatibilidades, o compilador emite uma mensagem de diagnóstico detalhada com informações sobre como corrigir o problema.
Código fonte
O código fonte para o compilador, tempo de execução e biblioteca padrão é escrito com C++ (usando desenvolvimentos LLVM) e Python, e é distribuído sob a Business Source License (BSL). A essência do BSL é que o código de funcionalidade estendida está inicialmente disponível para modificação, mas por algum tempo pode ser usado gratuitamente apenas sujeito a condições adicionais, que exigem a compra de uma licença comercial para contornar.
Os termos de licença adicionais do projeto Codon exigem que o código seja transferido para a Licença Apache 2.0 após 3 anos (1º de novembro de 2025). Até então, a licença permite a cópia, distribuição e modificação, desde que seja utilizada para fins não comerciais.
LEIA TAMBÉM: