Ainda na minha demanda por uma melhor linguagem/framework para desenvolvimento para a Web, acho que as seguintes linguagens/frameworks merecem, pelo menos, que as tenha em conta:

Contudo, vou já pôr de lado, por razões diferentes, Java, PHP e Perl. Uma das características que procuro é uma forma harmoniosa de separar a produção de documentos XHTML da lógica de negócio propriamente dita. O PHP é muito orientado à produção de documentos, enquanto o Java é mais adequado à codificação da lógica de negócio. Perl, confesso que não conheço muito bem, mas tenho a sensação que se aproxima bastante de PHP, com a desvantagem que não foi desenhada de raiz com o objectivo de gerar documentos para a Web (e não são de excluir também alguns sustos que tenho tido ao olhar para algum código Perl particularmente compacto ;). Com qualquer uma das que conheço se consegue, de alguma forma, separar a produção da markup da lógica de negócio, no entanto, nenhuma delas atinge essa separação de forma satisfatória, pelo menos, para mim.

Com PHP consegue-se esta separação pela utilização de um qualquer sistema de templates dos que por aí andam, deixando apenas a codificação da lógica de negócio ser feita em código PHP propriamente dito. Com JSP também se consegue algo parecido pela utilização de taglibs; a linguagem de template neste caso baseia-se num dialecto XML definido pelo próprio programador. No entanto, até hoje ainda não usei nenhuma solução de templating para PHP ou JSP de que gostasse realmente. Ora as sintaxes de template são intragáveis, ora se confundem com o próprio XHTML (diluindo o valor da estrutura do documento, uma vez que lhe mistura tags que não fazem parte dessa estrutura), ou são tão “comodamente” parecidas com a própria linguagem da lógica de negócio que se ganha demasiado poder ao nível da linguagem de template, perdendo-se toda a vantagem da separação que pretendíamos (mais tarde ou mais cedo o programador cai na tentação de adicionar lógica de negócio nos templates).

Assim, sobra-me analisar mais a fundo Ruby e Python, bem como algumas frameworks que lhes existam associadas. Tenho lido de bom (e de mau) a seu respeito e tenho por isso alguma curiosidade de olhar para elas mais de perto.

Ultimamente tenho usado um pouco de Python e da framework Django, e não estou desiludido. Conto relatar mais dessa experiência proximamente.