Gostaria de ouvir opiniões de pessoas que usaram uma linguagem que compila para php. Um desses idiomas que conheço é o Haxe . Outros que eu já li são Kira e Pharen .
Quão bem essas linguagens se integram ao PHP? É relativamente fácil escrever um plug-in para um PHP CMS neles?
Quão maduras são suas implementações e ferramentas?
Você os recomendaria a alguém que precisa usar um php cms, mas odeia php?
Respostas:
Eu sou o criador da Pharen, que compila um dialeto Lisp para PHP. Para responder às suas perguntas, ele se integra muito bem ao PHP. É fácil incluir funções de chamada de bibliotecas existentes / usar seus objetos.
Quanto à maturidade, ainda não houve nenhum uso de produção do código Pharen. Embora em termos do idioma tudo o que você queira esteja lá e funcionando, coisas como implantação ainda precisam de um pouco de esforço extra.
Dito isto, se você escolher a Pharen, ficarei feliz em ajudar da maneira que puder. Entre em contato se tiver outras dúvidas!
fonte
Josh K está certo em alguns aspectos, é melhor conhecer o php para direcionar melhor o tempo de execução do php. No entanto, a principal razão para isso não é que o haxe é um compilador ruim, mas o php é uma linguagem "idiossincrática".
Php tem uma quantidade incrível de funções em seu espaço de nomes base. Portanto, há muitas palavras-chave reservadas e funções especiais que você precisa conhecer para evitar conflitos de nomenclatura. Algumas pessoas estão bem com isso, acho que é um design de linguagem horrível. O HaXe contorna esse problema criando seu próprio espaço para nome em php.
O php transforma automaticamente um número inteiro em um flutuador no estouro. É claro que isso quebra a digitação estrita na qual idiomas como o HaXe dependem para segurança de tipos (e para permitir coisas simples como algoritmos de hash rápido). Eu acho que esse é outro recurso terrível da linguagem. Além disso, o haXe não pode ajudar aqui, porque esse comportamento php não pode ser alterado.
Então, lá vai você. Eu acho que o haXe melhora o php porque elimina algumas falhas (percebidas) da linguagem do php. No entanto, existem tantas coisas estranhas sobre php, que você acaba precisando aprender bem para corrigir algumas de suas idiossincrasias.
Tudo o que foi dito, a linguagem haXe é incrível. Ele permite que você organize seu código php em melhores namespaces, possui um sistema de tipos bastante sofisticado, possui algumas opções de compilação condicional para lidar com problemas específicos de php e possui algumas boas operações de documentação. Por esses motivos, não é uma má escolha projetar uma biblioteca sofisticada ... mesmo para algo como php.
Links relevantes:
php magic: http://haxe.org/doc/advanced/magic
(também procure por "peculiaridades da plataforma" na seção da comunidade do site principal do haxe.org)
fonte
Horrible Garbage
Eu usei o haXe por recomendação de alguém e nunca recomendaria isso a ninguém por qualquer motivo .
A compilação cruzada entre idiomas leva a confusão, erros e erros. Também torna a depuração uma tarefa monumental.
Não! Eu recomendo que você aprenda PHP corretamente ou use um CMS diferente. Como parece que você não tem uma opção na parte do CMS, a outra opção é aprender o idioma e lidar com ele.
Jovem na melhor das hipóteses, instável na pior. Você não encontrará muito suporte para eles.
Parece que você tem o trabalho de escrever algo para um aplicativo PHP. Além dos problemas óbvios de que seu código teria que importar funções / objetos PHP existentes para funcionar, e o lixo acima mencionado, qualquer pessoa que trabalhe com isso agora precisará aprender seu idioma para o compilador de idiomas. Caso contrário, eles vão mexer com o código "PHP" frágil que é o resultado. Isso também significa que, se eles funcionarem, você precisará reimplementar essas alterações no seu código ou correr o risco de perder as alterações que qualquer outra pessoa fizer.
Se você odeia trabalhar com PHP, espere até ter que trabalhar com parte do código que essas linguagens geram.
"" Compilação cruzada entre idiomas "
Isso leva a confusão, erros e erros. Quando você escreve um código que está sendo traduzido para outro idioma, está se removendo da fonte inicial. O que você escreve e o que é gerado são completamente dependentes do compilador. Escrever código para gerar código é confuso, você cometerá erros e encontrará erros que não espera. Eu não recomendaria que você os usasse.
fonte
Eu usei vários tradutores de idiomas e, no final, você sempre tem muita coisa que está tentando evitar ... Então, se você odeia o PHP, espere até ter um problema realmente obscuro que exige que você aprofundar o pescoço nas entranhas. No entanto, devo ser um glutão, porque acho que alvejar neko com haXe seria bem legal.
fonte
Se for para fazer um plugin para um PHP CMS, fique com o PHP.
Embora eu use o HaXe e o considere realmente ótimo, não o recomendo neste caso. São simplesmente muitos indenizações e os custos seriam maiores que os ganhos de apenas um pequeno plugin.
fonte
Eu já experimentei o Haxe e não posso recomendá-lo para desenvolvimento web.
No entanto, gostei da abordagem, e é por isso que implementei minha própria linguagem minimalista , que também é compilada no PHP, mas de uma maneira muito mais direta que a Haxe, para que seja fácil depurar o código gerado e interagir com o código PHP existente. .
fonte