dia 4 - 25/10/2006 - quarta-feira
FORTRAN está com os dias contados, finalmente! Já era hora :-) O Guy Steele (um dos 4 criadores de Java) apresentou a nova linguagem que o grupo dele na Sun está criando para computação científica. O trabalho, realmente, é de primeríssima linha e estou sentindo que finalmente está chegando uma linguagem que irá substituir FORTRAN definitivamente no mundo científico. A IBM também está trabalhando numa nova linguagem para o mesmo intuito (chamada X10 e que é fortemente baseada em Java), mas algo me diz que a solução da Sun, coordenada pelo Guy Steele tem mais chances de se tornar o padrão; nos próximos anos saberemos se minha intuição está correta ou não.
O objetivo principal é diminuir drasticamente o tempo entre a formulação matemática de um problema científico e o tempo que demora para obter a resposta (note que isso inclui tanto o tempo para desenvolver o programa e o tempo para executar o programa).
A linguagem se chama Fortress, é orientada a objetos, possui traits como ferramenta básica de extensibilidade e tem uma série de características interessantes:
- fortemente tipada, inclusive com checagem de dimensões (m/s^2 nos Reais)
- minimalista com possibilidade de extensões através de bibliotecas
- as bibliotecas estendem não só a funcionalidade mas a sintaxe e a semântica da linguagem
- Testes de Unidade embutidas dentro da linguagem e associados às unidades do código. A idéia é que toda biblioteca já virá com seus testes automatizados
- Interfaces diferentes para os programadores de aplicações e para os programadores de bibliotecas (que são quem estendem a linguagem e portanto, tem acesso a uma interface mais poderosa e sofisticada).
- Notação bem próxima da notação matemática através de caracteres UNICODE e também através de uma notação ASCII similar ao latex, aliás, a linguagem já vem com um pré-processador que converte o código-fonte para LaTeX.
- Suporte para paralelismo de forma transparente para o programador da aplicação.
Em suma, é um projeto super-ambicioso que com certeza produzirá um resultado excelente. Só que em Ciência da Computação isso não é suficiente para que a coisa seja adotada realmente pela comunidade pois depende de fatores sociais, econômicos e mercadológicos. A história da computação está repleta de exemplos de excelentes idéias, linguagens e sistemas que não vingaram enquanto que competidores de pior qualidade vingaram. Vamos esperar para ver e torcer para que dê certo!
À tarde assisti a uma apresentação bem polêmica (disseram que o artigo passou por mais de 10 revisores antes de ser aceito :-)) que criticou fortemente Programação Orientada a Aspectos. Ele recapitula as idéias de Parnas e Dijkstra sobre modularização para argumentar que AOP não resolve problema nenhum, muito pelo contrário. O resumo da idéia do autor é o seguinte:
- A comunidade de AOP alega que aspectos servem para aumentar a modularidade de programas através do encapsulamento de funcionalidades transversais.
- Mas, na verdade, AOP não só não ajuda a aumentar a modularidade como piora significativamente a modularidade aumentando o acoplamento e a diminuindo a coesão.
Agora à noite chegou a hora do grande evento social com muita comidade, bebida e música no Oregon Museum of Science and Industry. O tema da exposição principal era Star Wars e foi muito divertido.
4 Comments:
Pô, a inveja de não assistir a essas apresentações eu até agüento, mas a parte da comida... é insuportável! Me lembro de todos aqueles bolos, mousses, pudins, croissants, cookies...
Na verdade, esta OOPSLA estava um pouquinho mais diet. Mas OOPSLA sempre é OOPSLA... :-)
tem razão Mario, eu quis dizer suficiente e não necessário, obrigado. Já corrigi e até acrescentei uma frase a mais:
"A história da computação está repleta de exemplos de excelentes idéias, linguagens e sistemas que não vingaram enquanto que competidores de pior qualidade vingaram. Vamos esperar para ver e torcer para que dê certo!"
Fabio. Gostei da idéia do diário da OPSLA. Vou ler.
julio cesar leite
Post a Comment
<< Home