O avô do F#

Faleceu em março um Sr. chamado Robin Milner. Não gostaria de deixar passar isto em branco… Quando ainda estava decidindo o tema da minha tese de doutorado tive a sorte de encontrar um livro que me intrigou, com o título A Calculus of Communicating Systems. Quando folheei e percebi que estávamos falando de uma formalização…

2

Agilidade X Formalismo

Sempre vimos o formalismo no desenvolvimento de software como um misto de desejo e desconfiança. Isto é explicável porque se por um lado ele melhora ou mesmo garante a qualidade de uma implementação de software, por outro lado ele costuma implicar em um custo muito alto, exigindo um tempo maior de desenvolvimento e o uso…

2

Tendências em Linguagens de Programação

Hoje, no universo das linguagens de programação, fica clara a existência de uma fricção entre três dimensões distintas: 1) entre o mundo tipado e o não tipado; 2) entre o imperativo e o funcional; 3) entre linguagens específicas e linguagens genéricas. Como trabalhei em projetos muito grandes, tendo a usar linguagens imperativas, genéricas e fortemente…

1

Expressões Lambdas e Frameworks

Acabei de ler, com muito prazer, (e recomendo muito!) uma série de posts do Brian McNamara, que hoje trabalha no time do F#. Ele constrói ao longo de vários blogs alguns parsers usando a notação lambda do C#. É um exemplo fantástico do poder das linguagens funcionais e da cultura de reuso impregnada nesta comunidade…


Variância e Contra-variância: uma dívida

Tenho que pagar uma dívida aqui. Falei na volta do PDC que iria falar sobre variância e contra-variância, pois haverá mudanças no C# 4.0. Bem, aqui vai… Antes de tudo, vou tentar ser simples e lidar com o assunto sem muitos detalhes. Quem quiser saber mais, recomendo a séries de blogs do Eric Lippert aqui….

1

Cool 2x

Mais PDC – 1 Dentre as apresentações do PDC, uma das que mais me chamaram atenção foi a de um pesquisador da Microsoft Research que falava de controle de temperatura em datacenters. O pesquisador mostrou um pequeno aparelho que captura a temperatura ambiente e se comunica com outros aparelhos idênticos numa rede wireless. Esta rede,…

1

Aumente seu Vocabulário

Linguagens Orientadas a Objetos foram tema da minha tese na universidade em 92, mas confesso uma grande atração pelas linguagens funcionais. Esta semana realizei um desejo antigo: reservei um tempo para leitura de livros sobre ML e F#. Aqui vão alguns comentários: Não tenho problemas com o uso de recursividade – para mim, algoritmos recursivos…

2

Como encontrar os pontos de variação em uma aplicação?

Com certeza é um trabalho de análise a ser realizado antes da codificação. Parece simples, não é? Mas não é o costume. A lei do menor esforço é o costume e ela tem todo o sentido: menos esforço implica menos gastos que implica em menos custos. No entanto, quando temos uma aplicação dirigida a vários…


Workshop sobre Produtividade no Desenvolvimento de Software (final)

Quarta-feira agora terminou nosso Workshop sobre o tema Produtividade de que venho falando há algum tempo. Tivemos 15 empresas participando e o nosso feedback parece promissor. Das discussões que nasceram no workshop, creio que as mais interessantes foram: · A competição na oferta de sérvios de fábrica de software está tornando o risco e os…

1

Fronteiras para um DSL?

Nos ppts do nosso futuro Workshop sobre Produtividade existe uma figura que fala sobre os tipos de linguagens. Como oposição: Declarativa X Procedural e Textual X Pictórica.   Neste diagrama não existe um lugar específico para uma DSL (Linguagem de Domínio Específica). Uma pergunta que me fizeram outro dia: Wizards são DSL’s? Definições como estas…