nunojob:~ dscape/08$ echo The Black Sheep

Posts tagged ‘PERL’

Primeiro contacto com programação por parte dos alunos do ensino superior

Qual deve ser a linguagem de programação que serve de introdução ao seu curso superior de informática? Para mim a resposta não podia ser mais evidente: Haskell.

Pelo que sei no ISEP a primeira coisa que se aprende é Java, o que acho chocante. Afinal o paradigma de programação orientada aos objectos é vastíssimo e ensinar alguém a programar em Java sem estes conhecimentos por trás parece-me de uma irresponsabilidade incrível. Isto após uma reestruturação que ocorreu o ano passado! Pode-se alegar que o ISEP tenta formar profissionais que sejam absorvidos o mais rapidamente possível pelas empresas, que não se pretende formar investigadores. Mas, na minha opinião pessoal, existem coisas que são base para um licenciado em informática. Têm que conhecer os paradigmas de programação que existem pelas valias que eles oferecem e não pelo facto da sua sintaxe ser mais ou menos acessível. Como me parece evidente que qualquer informático deve saber estruturas de dados e algoritmia. São as ferramentas base com que trabalhamos diariamente e por muito que as empresas queiram monos lá a trabalhar a “chapar” código têm que existir algo que diferencie esse mono de um pedreiro. Senão para que o canudo?

Mas e porque Haskell?

  1. É uma linguagem funcional. Os problemas são entendidos como problemas matemáticos, o que permite aos alunos quebrar com a pre-formatada ideia que programar é deve ser seguindo o paradigma imperativo.
  2. A maneira de pensar nesta linguagem é diferente. Dijkstra disse que “It is practically impossible to teach good programming to students that have had a prior exposure to BASIC: as potential programmers they are mentally mutilated beyond hope of regeneration.”. Aposto que ele diria o oposto sobre Haskell. É difícil ensinar mal alunos que começam por aprender/gostar de Haskell.
  3. Ao aprender os vários paradigmas o aluno torna-se mais versátil. Começando por Haskell certamente que não vai ver todos os problemas de uma forma imperativa. Esta forma diferente de pensar vai-lhe permitir, no futuro, a mais valia de saber escolher o método mais apropriado para resolver um problema que se depare no futuro. Pode na altura não usar Haskell mas vai-se lembrar dos mecanismos que aprendeu e da forma, correcta, que aprendeu para resolver problemas.
  4. As outras vantagens do Haskell: Esquema de recursividade extremamente simples, Strongly Typed, Lazy Evaluation, Elegância do código.

Atrevo-me até a dizer que podem dizer mal do Haskell em tudo que quiserem menos que é mau como ferramenta de ensino. Para isso, é simplesmente divinal.

Se quiserem ver uma melhor resposta a esta pergunta Why Haskell podem ler este artigo no Good Math, Bad Math. E caso queiram espreitar um pouco de código podem visitar (e rir-se um bocado com) este The Evolution of a Haskell Programmer.

Advertisements

Dicionário Aberto de Calão e Expressões Idiomáticas

blica ao sexual masculino
sinónimos: (pénis/pênis); pila; piça; caralho; cacete; pau; pinto; ponteiro; porra; drejo; bregalho; vergalho; Piroca; pichota; banana; pirola; pissalho; piçalho; bitola; besugo; sabordalhão

Podem ler isto, e muitas mais definições interessantes, no dicionário aberto de calão (PDF) alojado no servidor natura da Universidade do Minho.

Uma daquelas iniciativas muito sui-generis, que só podia partir do professor José João. É um professor completamente diferente dos outros, não fala para os alunos como se lhes fosse superior, e está sempre disponível para um bom tema de conversa. Claro que a definição de bom tema é controversa, mas isso é outro assunto.

Mas o nome da iniciativa não devia ser DAC, devia ser algo mais explicito. Era engraçado; se bem que não encontrei nenhum acrónimo giro e adequado.

Também era giro criar um wiki de calão, já que é demasiado difícil aos colaboradores submeter alterações/adições. Assim o projecto ganharia, certamente, outra dimensão e utilidade.

Porque não uma social network de calões? :P Isso não compra o google, penso eu de que! Falhei por um pentelho seco de velha? :)

Conclusão: As aulas de PERL vão ser interessantes…