O que esperar do Python para os próximos anos? Pois no que depender…

… da sua ativa comunidade de usuários comprometidos e apaixonados por ela, teremos muitas novidades! A começar pela última atualização (3.11 em out/22), os desenvolvedores do CPython (a principal implementação da linguagem, que é liderada por Guido van Rossum) se esforçaram muito para torná-la a melhor versão possível, destacando os melhores tracebacks, maior velocidade de execução, melhor tratamento para as excessões (e seus grupos) e melhorias para a digitação, entre outras que certamente não são tão preponderantes…

“What comes through in the talk is a passion for the language that happens at several levels. It starts with the developers and commitee who maintain and expand the language for its loyal community. Yet that same community is also helping to grow the language, not just by applying it to new problem domains, but also by collaborating in open processes to identify its most-needed new features. Python is fine-tuning the language for data science and AI applications, and looking at ways to avoid performance hits from Python’s Global Interpreter Lock.”

— by The New Stack.

Pablo Galindo Salgado é um dos principais desenvolvedores do Python e uma das cinco cabeças que fazem parte do conselho para a direção da linguagem, além de ter sido o responsável pela gestão dos lançamentos das mais recentes versões (3.10 e 3.11). Em um podcast promovido pelo Stack Overflow, ele trouxe alguns detalhes interessantes sobre todo o seu processo de desenvolvimento (por parte dos desenvolvedores), além das contribuições feitas pela sua fiel comunidade de usuários. Dentre os principais tópicos abordados, está a evolução da linguagem para atender aos requisitos de aplicações voltadas para a Ciência de Dados e Inteligência Artificial (IA), além dos problemas relacionados a compatibilidade.

Em relação a IA generativa e os grandes modelos de linguagens, Salgado declarou que os desenvolvedores têm tido dificuldades para prever as grandes novidade para Python, além de outros cenários em relação a tópicos como o desenvolvimento WEB, a estrutura WEB do Django e ciência de dados. No entanto, ele também destaca a flexibilidade da linguagem, que por sua vez torna possível a disponibilização de todos os fluxos de trabalhos possíveis. Esta flexibilidade é benéfica para os trabalhos dos desenvolvedores em geral, pois se deu conta de que as estruturas de IA (escritas em linguagens compiladas rápidas como Rust, C++ ou Swift) ainda possuem uma camada de Python no topo para interação.

A compatibilidade também foi outra questão bastante debatida. Segundo Salgado, os desenvolvedores tem como objetivo, incluir a compatibilidade do WebAssembly e a melhoria do sistema de digitação do Python, na sua interface de usuário e mensagens de erro, bem como manter a compatibilidade também com as versões anteriores da linguagem. Embora o (antigo) Python 2 já esteja sendo abandonado aos poucos, ainda existem algumas dezenas de desenvolvedores que fazem o seu uso (provavelmente para manter alguma aplicação ou sistema de legado em funcionamento). Sem contar ainda, os problemas relacionados as mudanças do Global Interpreter Lock (GIL), durante a migração do Python 2 para o 3.

Salgado também ressaltou que Python é desenvolvido de forma aberta por voluntários e como resultado, quaisquer problemas devem ser resolvidos através de uma parceria entre a sua forte comunidade, além da equipe principal de desenvolvimento e do Conselho Diretor da linguagem. Em sua opinião, isto torna as coisas um pouco mais desafiadoras, por causa da ausência de esforços coordenados para abordar alguns desses desafios. Porém, isto também permite que qualquer pessoa dê o seu contributo e participe, trazendo soluções bem melhores do que aquelas que seriam alcançadas por um conjunto muito controlador de desenvolvedores.

Entre outros tópicos que por questões de espaço (e tempo), vou ficando por aqui… &;-D