2007-04-11

Aprender a programar com Squeak Smalltalk


Devo dizer que fiquei muito impressionado com o Squeak. Depois de assistir a um vídeo onde Alan Kay falava tão mal dos actuais sistemas e linguagens (C++, Java, Windows, HTML, etc.) fiquei a pensar que Kay faria parte de um grupo de falhados dos anos 80, quando C++ e Windows passaram a ser o centro das atenções enquanto Smalltalk, a linguagem de sonho que inventara, passava ao eterno esquecimento.

Mas não. Fiquei com a séria impressão de que a indústria alimentou o receio de que Smalltalk pudesse vir a ser popular. E isso era perigoso porque toda a gente poderia desenvolver sistemas em sua casa com uma linguagem tão simples como poderosa.

Uma das impressões que vou estudar mais em pormenor é a visão de que os actuais sistemas são degenerações de um conjunto de ideias melhores. Kay pode ter razão, porque de uma forma geral as linguagens e sistemas que temos hoje são francamente maus.

Foi do grupo de pessoas que estavam na Xerox em Palo Alto que nasceram e cresceram algumas das melhores coisas que hoje temos na informática: interfaces gráficas com ícones, rato, orientação a objectos, abstracção de dados, linguagens dinâmicas e reflexivas, virtual machines, som sintetizado, etc. Tudo foi criado nos anos 60 e 70 e serviu de base ao Apple Lisa/Macintosh/Mac, ao Windows, e em larga medida hoje está presente em quase tudo o que mexe.

Imaginemos um mundo em que podemos editar e modificar tudo à nossa frente com grande facilidade. Até o ícone de "reciclagem" que temos no Ambiente de Trabalho pode ser directamente programado quanto ao seu funcionamento; um desenho que fazemos passa a ser um objecto, inclusivé as janelas que abrimos podem ser reprogramadas. Tudo são objectos e tudo o que interessa é jogar com a interacção entre objectos. O sistema é totalmente aberto e não há código compilado.

O sistema, as aplicações, os nossos ficheiros - tudo são objectos directamente acedidos via código ou simplesmente com o rato. Assim, ao utilizarmos o computador estamos a desenvolver a própria linguagem de programação.

Tudo isto era um sonho mas felizmente nos anos 90 Kay arrancou com um projecto chamado Squeak. Os inventores do Smalltalk estão aí e querem recuperar o seu lugar. Hoje Smalltalk é uma linguagem em ascenção e marca a diferença pelo facto de ser dirigida a seres humanos e não a máquinas.

Videos sobre estas coisas estão aqui.

"The real romance is out ahead and yet to come. The computer revolution hasn't started yet. Don't be misled by the enormous flow of money into bad defacto standards for unsophisticated buyers using poor adaptations of incomplete ideas."

- Alan Kay

Sem comentários:

Enviar um comentário