Finalmente a versão 0.3 ficou pronta, depois de diversos testes e uma varredura completa atrás de falhas.
As novidades desta versão são:
* Sistema de cache do parser, grande ganho de performance apartir da segunda execução do mesmo scripts.
* A syntaxe agora é customizada com regular expression, toda liberdade para inventar a sua própria sintaxe.
* Interface Operable, para manipular os calculos matemáticos usando uma class Java, excelente para calculos 3D e 2D.
* Chamadas a classes e metodos Java em loops foi melhorado tendo uma performance muito superior.
* Bug com generics, principalmente usando o iterator de um array genérico foi resolvido.
* Suporte a encoding de caracteres especiais como no Java, com "\uXXXX"
* E muitos outras pequenas falhas resolvidas.
Alteração do exemplo da sintaxe em português, agora com regular expression:
http://eduveks.blogspot.com/2008/03/que-tal-uma-sintaxe-em-portugues.html
Como o parser agora é usando regular expression há um maior consumo de CPU, o sistema de cache vem compensar isto, por isso o ideal é usar sempre o cache: http://code.google.com/p/cajuscript/wiki/tutorialCache
Exemplo de alguns sites usando CajuScript com a nossa framework web que estamos desenvolvendo a alguns anos baseada em scripts:
http://www.sonsdalusofonia.com
Detalhe, o front end, ou seja todo o HTML é processado pelo CajuScript.
Em breve esta framework também será opensource, falta terminar alguns detalhes e a documentação.
Um agradecimento muito especial a equipe do CajuScript:
* Marcos Antonio de Vasconcelos Junior (mark.vscs)
* Carlos Filipe Torres (carlosfilipetorres)
* Jean Fábio Baro (jfbarro)
Mais uma vez fica aqui o convite para quem quiser participar no projeto, será muito bem vindo. E também qualquer sugestão ou crítica é sempre bem vinda.
Para versão 0.4 que deverá sair por volta de Março/Abril de 2009 terá por enquanto estas novidades:
* For each.
* Melhor suporte a arrays.
* Mais melhorias de performance.
E para quem tem interesse em .Net o CajuScript trabalha bem com o IKVM: http://code.google.com/p/cajuscript/wiki/tutorialCajuNet