[Cascavel-pm] Ensinar Perl na Faculdade [Was: EXPLICAÇÃO SOBRE: PUSH, SPLIT e FOREACH.]

Adriano Ferreira a.r.ferreira em gmail.com
Quinta Junho 21 06:31:33 PDT 2007


On 6/21/07, Eden Cardim <edencardim em gmail.com> wrote:
> On 6/21/07, Luis Motta Campos <luismottacampos em yahoo.co.uk> wrote:
> >    Quanto a ensinar C: é a melhor coisa que você pode fazer para
> > ensinar alguém a programar.
> >    Depois, o cara vai descobrir que existem muitas outras linguagens
> > de programação, e vai escolher e aprender sobre elas sozinho.
>
> Acho melhor ensinar Haskell, LISP ou Prolog primeiro. Assim, a pessoa
> não vai passar o resto da vida encucado só com linguagens imperativas.
> É mais ou menos como ensinar alguns idiomas estrangeiros pro seu filho
> antes de ensinar o idioma nativo, é inevitavel que ele aprenda o
> idioma nativo depois. Fazer ao contrário é bem mais difícil.


Como o Eden, também não acho que começar a ver programação através de
linguagens como C seja o melhor. Mas:

* Haskell é muito matemático
* LISP tem parentêses demais
* Prolog é extremamente difícil de se usar na prática - acho que pode
até ser uma boa embutido em uma aplicação maior - mas de resto,
algumas coisas práticas como IO e outras deixam muito a desejar

Acho que é uma boa idéia começar com uma linguagem de alto nível que
esconda as baboseiras do iniciante. Entre as baboseiras, temos 'memory
management', estruturas de dados básicas, etc.

Ruby e Python são linguagens menos assustadoras no caso do cara já ter
visto alguma coisa de programação. Se não é este o caso, Perl também
pode ser uma opção. Afinal hello world tem de ser escrito assim:

print "Hello World\n"

e não com "#include stdio..." ou "public static void main(String[]..."

Eu disse que Perl pode ser uma opção -- mas isto depende muito da
gentileza do professor -- se for um ogro como os nossos de plantão,
eles vão fazer este pessoal correr sem olhar para trás, com os olhos
sangrando com referências, globs, stashes, detalhes de implementação
de objetos, e outras coisas escabrosas. Se não tiverem espírito
combativo, provavelmente nunca vão voltar.

Com uma linguagem de alto nível, o iniciante pode fazer mais e
continuar motivado por mais tempo. Ele pode apanhar menos ou pelo
menos apanhar de coisas que façam sentido para ele, diferente de
segfaults e bichos parecidos. É mais produtivo, mais divertido e
recompensador.

Meus 2 centavos,
Adriano.

> --
> Eden Cardim
> Instituto Baiano de Biotecnologia
> Núcleo de Biologia Computacional e Gestão de Informações Biotecnológicas
> Laboratório de Bioinformática
> _______________________________________________
> Cascavel-pm mailing list
> Cascavel-pm em pm.org
> http://mail.pm.org/mailman/listinfo/cascavel-pm
>


Mais detalhes sobre a lista de discussão Cascavel-pm