Python: se já não bastasse ser flexível e de fácil aprendizado…

Desde os tempos de faculdade, uma das coisas que logo aprendi é que as linguagens de programação interpretadas geralmente são mais lentas que as compiladas, pois a CPU executa o código binário de forma direta, sem interpretadores no caminho para atrasar o processo (tal como acontece com as linguagens de programa interpretadas, daí o nome). Por isso, aplicações pesadas em geral são compiladas, para aproveitar da melhor maneira possível os recursos computacionais do computador…

“Python is one of the most popular programming languages around, but that doesn’t mean it’s perfect, especially after what the comapny itself called a “cursed” start to the year. One of the main criticisms of Python is that it can be rather slow, especially compared to newer languages. Most people put up with this tardiness because of its flexibility and easiness to learn. All of that could be about to change, however, according to Core Python (CPython) developer Mark Shannon.”

— by TechRadar.

Apesar da grande popularidade e aceitação no mercado, a linguagem Python é interpretada, o que acaba limitando bastante a sua aplicação prática em projetos que necessitem rodar “na velocidade da luz”! Porém, isto também está prestes a mudar, segundo Mark Shannon (desenvolvedor do Core Python): a próxima versão da linguagem (3.11) trará uma série de melhorias que possibilitarão acelerar significativamente a sua velocidade de execução, com ganhos em sua performance que poderão alcançar algo em torno de +50% (mesmo apesar de estar ainda em estágio beta)!

Infelizmente, este é (talvez o único) grande defeito desta maravilhosa linguagem de programação (o que para muitos entusiastas, é algo bastante frustrante), embora isto seja ignorado em vista do seu grande apelo. Por isto, outras iniciativas em prol de melhorar a sua velocidade de execução já foram criadas, como a própria Microsoft ter financiado a Python Software Foundation, tendo em mente alavancar a sua popularização para superar a linguagem C, que atualmente é (e continuará sendo por um bom tempo) a principal linguagem de programação do mercado.

Python jamais irá superar C em termos de performance e velocidade, devido a natureza destas linguagens (a primeira é interpretada e a segunda é compilada). No entanto, uma melhora na performance de Python pode torná-la mais competitiva em comparação com outras linguagens interpretadas (como V8 para JavaScript ou LuaJIT para Lua), o que possibilitará utilizá-la em projetos que até então, eram dominados por estas duas linguagens. Se isto ocorrer de fato, a popularidade Python será tal, que certamente irá superar C neste quesito, embora ambas sejam utilizadas em projetos distintos (devido as suas características).

E em pensar que um dia, C/C++ quase se tornou a minha “segunda língua”… &;-D