Porque não existe o PHP6?
Porque é o que o PHP passa da versão 5.6 para a 7.0? Existe algum mistério por trás da ausência de um PHP 6?
echo: “Resumo”;
Hoje em dia existem imensas linguagens de programação, voltadas para diferentes fins, tendo cada uma delas a sua história de origem. Muitas destas histórias têm momentos bastante impactantes que causam mudanças nas linguagens e as ajudam a evoluir.
Neste semestre tive a oportunidade de aprender PHP, uma linguagem usada originalmente apenas para o desenvolvimento de aplicações presentes e atuantes no lado do servidor, e consequentemente aprender um pouco da história da mesma. Algo que notei durante a minha investigação é que não parece existir um PHP 6, sendo que no próprio website do PHP ao visualizarmos as versões suportadas da linguagem há um salto da 5.6 para a 7.0. Isto despertou em mim uma enorme curiosidade sobre este pequeno ponto e com a possibilidade de realizar um ensaio teórico sobre este tema, decidi aproveitar a oportunidade. Com este artigo pretendo dar uma vista de olhos na história da linguagem PHP, mais concretamente no famoso caso do PHP 6 e como este impactou a mesma.
Como cada história de origem, vamos começar no nascimento do PHP e para isso iremos recuar até 1994.
echo : “PHP: O início”;
O PHP foi criado em 1994, por Rasmus Lerdof, e era inicialmente um conjunto de binários escrito em linguagem de programação C. Rasmus utilizava este conjunto de scripts no acompanhamento de visitas ao seu currículo online, ao qual ele deu-lhes o nome de “Personal Home Page Tools” ou “PHP Tools”.
Em junho de 1995 Rasmus disponibilizou o código fonte do PHP Tools ao público, dando liberdade de utilização do mesmo, o que encorajou desenvolvedores a aperfeiçoar o código através de correção de bugs e “quality of life changes”. Mais tarde nesse ano, em setembro, Rasmus expandiu e mudou o nome da linguagem, que se passou a denominar de FI ( “Forms Interpreter”). Nesta altura a FI já tinha algumas funcionalidades do PHP atual. Sendo estas variáveis no estilo Perl (linguagem de programação usada para administração de sistemas linux e por aplicações que necessitam de manipulação de strings com facilidade), sintaxe HTML incorporada e interpretação de variáveis de formulários. Apesar de alguns problemas a FI cresceu, porém não como uma linguagem de programação. Isto mudou no mês de outubro quando Rasmus relançou o código reescrevido desta vez com o nome “Personal Home Page Construction Kit”.
echo: “O crescimento do PHP”;
Em abril de 1996, o código é de novo reformulado e introduzido como PHP/FI . Foi a partir daqui que o PHP começou a assemelhar-se a uma linguagem de programação, adquirindo o status de PHP 2.0 em junho. Nesta altura o PHP teve um aumento enorme de popularidade, sendo comprovado em 1998 por uma pesquisa da Netcraft que cerca de 60.000 domínios continham cabeçalhos com PHP.
O PHP 3.0 foi a versão mais semelhante ao PHP atual, anunciado em junho de 1998 como o sucessor oficial do PHP/FI 2.0, que tinha parado de receber melhorias desde novembro do ano anterior. Foi um resultado de uma colaboração de Rasmus com dois estudantes universitários, Andi Gutmans e Zeev Suraski, que tinha como objetivo fornecer mais recursos à linguagem. Estes recursos foram um dos pontos fortes do PHP 3.0 sendo que forneciam, uma sintaxe de linguagem consistente, suporte a programação orientada a objetos, interface para múltiplas bases de dados, entre outros.
Em maio de 2000, o PHP 4.0 foi lançado tendo o seu desenvolvimento começado no inverno de 1998. Esta versão tinha como objetivo melhorar a performance e modernizar o código base do PHP utilizando como base a “Zend Engine”( criada por Andi e Zeev ). O PHP 4.0 trouxe recursos adicionais como suporte para maior parte dos servidores web, sessões HTTP, mais liberdade na manipulação de dados de entrada de usuários, saídas de buffering e novas construções de linguagem.
No ano de 2004, em julho, dá-se o lançamento do PHP 5 que trazia consigo vários novos recursos, um novo modelo de objeto e no seu core a Zend Engine 2.0. A partir daqui muitas empresas adotaram o PHP como linguagem principal para desenvolvimento dos seus sistemas. Segundo o site w3techs 79.1% de todos os websites cuja linguagem de programação server-side é conhecida usam PHP, onde 33.1% usa ainda PHP 5 e 66.2% usam PHP 7.
echo: “1 2 3 4 5 … 7 ”;
Desde o lançamento do PHP 5 ao lançamento do PHP 7 passaram 11 anos. Durante este enorme período de tempo, o Facebook desenvolveu a sua própria linguagem de programação, Hack, para a HipHop Virtual Machine(HHVM). É importante salientar que o código do HHVM está disponível no GitHub e é licenciado seguindo os termos da PHP License e a Zend License. Esta iniciativa surgiu devido à falta de uma evolução do PHP e a ausência de lançamento de uma nova versão. Porém como é que não houve progressos no PHP durante este enorme período de tempo? O que aconteceu? Porque é que depois do 5 vem o 7?
A verdade é que houve tentativas de lançar o PHP 6, sendo a primeira delas em 2005, o que foi dando uma má impressão ao nome PHP 6 visto que estava em desenvolvimento durante muito tempo porém não era lançada. Esta versão tinha como objetivo trazer o suporte nativo a Unicode ao PHP, para poder ser possível utilizar codificação UTF-16 , mas devido a uma falta de compreensão das mudanças necessárias e problemas de desempenho após a conversão para UTF-16 levou a vários atrasos do projeto. Isto resultou em algumas das novidades planeadas sair com o PHP 6 saírem no lançamento do PHP 5.3 e 5.4, lançados em 2009 e 2010 respetivamente. Porém nenhuma destas versões do 5 tinha o tão esperado suporte a Unicode. O que nos leva a 2010 onde o projeto de lançamento da sexta versão do PHP foi abandonado.
Em dezembro de 2015 foi lançada uma nova versão do PHP, o PHP 7. A razão por detrás da numeração desta versão deve-se a uma simples votação entre desenvolvedores. Nesta votação foram apresentados argumentos para ambos os nomes e contexto histórico de um problema que tinha surgido com o PHP 6. Infelizmente durante o desenvolvimento do PHP 6 houve o lançamento de vários recursos, nomeadamente livros (o mais destacado pelos desenvolvedores), que usavam o nome PHP 6 e isso poderia causar confusão devido à discrepância entre o planeado PHP 6 e a nova versão do PHP que estava para sair. Esta preocupação e o impacto negativo acumulado pelo nome PHP 6 foram muito provavelmente a razão porquê o nome PHP 7 ganhou a votação.
echo: “Então o PHP 6 foi simplesmente um fracasso?”;
Não necessariamente.
É verdade que o projeto do PHP 6 foi abandonado, porém muitas das funcionalidades pensadas para essa versão foram lançadas em versões do PHP 5. Muitas pessoas consideram essas funcionalidades o legado do PHP 6 e eu concordo plenamente com essa maneira de pensar. Uma destas funcionalidades foi a internationalization extension que permite realizar várias operações desde formatação, trabalhar com locale identifiers, timezones, grafemas, localizar limites de texto e transliteração.
De modo a concluir este artigo gostaria de afirmar que os erros de uma pessoa são algo muito importante e marcante para a mesma. Através dos nossos erros podemos tirar lições de vida e melhorar como pessoas. Sinto que o mesmo se pode aplicar a linguagens de programação, neste caso o PHP, que apesar de ter existido um projeto que correu mal e que foi abandonado, não houve um sentimento de desistência e os desenvolvedores continuaram a tentar melhorar o PHP para todos nós, sendo muitas dessas melhorias aspetos que o PHP 6 traria consigo.