On Tue, Aug 10, 2010 at 12:11:18PM -0700, Paulo Jabardo wrote:
> Eu não acho que o problema seja IDE ou coisas do tipo. Nem mesmo qualidade de 
> aluno e professor. Eu brinco com lisp de vez em quando e eu acho os conceitos 
> da 
> linguagem geniais. Um monte delas foram apropriadas por linguagens como 
> Python e 
> as macros só lisp tem mesmo. Eu acho que a grande dificuldade é que programar 
> bem em lisp exige uma certa maturidade do programador. Há alguns anos eu 
> resolvi 
> dar uma olhada em Ruby. Em uma tarde eu podia fazer praticamente de tudo. No 
> lisp eu levei muito mais tempo. Em python você pode simplesmente jogar uma 
> variável nova no meio da função e aos trancos e barrancos fazer o programa. O 
> lisp, com os lets da vida, não incentiva isto, o que é bom,  mas exige 
> maturidade. Tem um monte de coisas assim que eu acho que dificulta a entrada 
> de 
> programadores inexperientes. 

Como eu vivo saudoso dos meus tempos de LISP resolvi ler a mensagem, e 
acrescentar
algumas coisas que podem ajudar ao aumentar (e me trazer de volta) à patota 
LISPiana...

Sou matemático e me senti em casa quando pulei de Pascal para LISP,  inclusive 
pela
simplicidade extrema do projeto - 5 funções para criar tudo, e ao abrir o 
terminal
de LISP eu estava dentro do LISP, tudo era LISP.  Não conheço (e acho que não 
pode haver)
outra linguagem assim. 

> 
> 
> Uma outra coisa que eu, como admirador de lisp mas não programador no dia a 
> dia, 
> sentia (e sinto às vezes) é  certa dificuldade na leitura de código. De onde 
> vem 
> isso? Não tenho certeza, mas certamente não tem nada a ver com os parênteses. 
> Talvez seja a facilidade de criar novas abstrações e abstrações diferentes 
> (macros por exemplo) o que faz que seja necessário ver além do código 
> imediatamente a sua frente: o que é esta macro que aparece aqui? É uma macro 
> ou 
> uma função e o que faz? Onde está definida? As limitações de outras 
> linguagens 
> eliminam este tipo de problema: o que você vê é o que há e não é muito 
> complicado (em geral...). É lógico que mais para frente estas abstrações 
> facilitam muito mas para alguém começando com lisp é extremamente intimidador.

A dificuldade de ler código! os programadores-LISP não têm o hábito de colocar 
comentários
nos programas, coisa que eu adquiri a fazer como hábito porque meus programas 
eram para ser
lidos pelos alunos... Um programa (eras! - programa? desculpe-me, uma função 
LISP ) necessáriamente 
começa um processo complicadíssimo que nós matemáticos conhecemos bem - é 
função de função 
e eu construi uma vez uma função para calcular a profundidade de uma função! 
Agora sem 
comentários nem eu conseguiria ler as minhas funções depois. 


> 
> As conseqüências destes aspectos é que em geral um código em lisp possui 
> funções 
> (ou "blocos de código") bem menores o que a longo prazo é muito bom mas para 
> iniciante é um pouco complicado. Esta foi minha experiência começando com 
> lisp e 
> acho que seja um aspecto importante da falta de popularidade do lisp.
> 
> 

Acho que além do que disse acima, há uma certa atitude de ser superior na 
comunidade-LISP, 
aliás natural e de se esperar. Inegavelmente programar em LISP - fui 
LISP-programmer... (que
saudade!) é uma arte refinada. Deixa-nos no risco de nos vermos como seres 
muito especiais...
Basta ver a cara de um monte de gente quando digo: "é... eu sou um 
LISP-programmer" apesar
de ser falso, hoje. 

Eu sou um ótimo programador - aprendi com LISP, mas abarroto meus programas com 
comentários!
Acho que qualquer um consegue ler os meus programas (hoje geralmente em C++).

Mas eu ainda volto!


Tarcisio
> 
>  
> 
> 
> 
> 
> ________________________________
> De: Marcelino Pinheiro <[email protected]>
> Para: [email protected]
> Enviadas: Terça-feira, 10 de Agosto de 2010 14:01:42
> Assunto: Re: Mensagem interessante sobre Lisp
> 
> 
> 
> 
> Em 10 de agosto de 2010 08:38, Rafael Ibraim <[email protected]> escreveu:
> 
> > A culpa é dos alunos? Dos professores? Ambos? Do mercado de trabalho?
> >Entre alunos e professores, acho que a maior parte da culpa está com
> >os alunos mesmo...
> >
> >
> >> A culpa é da IDE? Smalltalk tem IDE desde quando? O lisp comercial (e.g.
> >> LispWorks) não tem IDE? Ah, usa o Emacs! Até parece que é tão simples assim
> >> para alguém que está acostumado com um Ctl+C/Ctrl+V.
> >Com certeza, alguém que nunca viu o emacs na frente provavelmente vai
> >ficar perdido. E é justamente para isso que existe o tutorial(C-h t),
> >que inclusive é citado na splash screen... o problema é que as pessoas
> >no geral tem *preguiça* de ao menos *tentar* aprender alguma coisa
> >sozinhas.
> >
> >Quando resolvi aprender CL(por curiosidade mesmo, nunca tive aula nem
> >nd relacionado a LISP) nunca tinha visto o emacs na vida(usava a
> >versão windows do Vim) e fiz a escolha mais óbvia: usar o "LISP in a
> >box"[1] e já cair num ambiente pronto. Tentei usar o emacs e não
> >consegui. Feche o emacs e abri novamente, desta vez seguindo a
> >recomendação de usar o tutorial. Resultado: Nunca mais usei vim e com
> >o tempo fui customizando um emacs "do zero" ao invés de usar a solução
> >pronta.
> >
> >O que quero dizer é que sim, é difícil começar "do zero", mas não é
> >*tão difícil assim*. Existem tutoriais, blogs, etc. que explicam muito
> >bem como montar um ambiente de desenvolvimento em LISP de uma maneira
> >que até um ignorante total no assunto(como eu, na época) consegue
> >seguir passo-a-passo. O problema é que as pessoas tem que se esforçar
> >um pouco, afinal o tutorial só vai me ensinar alguma coisa se eu
> >seguí-lo.
> >
> >
> 
> Acho me encontro nesta fase, apesar de já ter montado um ambiente com emacs 
> prefiro pelo menos por hora usar o lispbox. Pelo menos para mim está dando 
> certo, pois consigo treinar usando o dito no windows.
> 
> [1] http://common-lisp.net/project/lispbox/
> >
> >Em 8 de agosto de 2010 17:22, Guaracy Monteiro <[email protected]> 
> >escreveu:
> >
> >>  Em 07-08-2010 12:08, Rafael Ibraim escreveu:
> >>>
> >>> Bem, talvez alguns não concordem mas na minha opinião o que realmente
> >>> impede uma adoção maior de LISP em novos projetos é (pelo menos aqui
> >>> no Brasil) essa "nova geração" de desenvolvedores. Eles já se formam
> >>
> >> Se algo não vai como deveria, não é colocando a culpa nos outros que algo
> >> irá melhorar. É necessário um trabalho de reconhecimento e busca de
> >> soluções.
> >>
> >> A culpa é dos alunos? Dos professores? Ambos? Do mercado de trabalho?
> >>
> >> A culpa é da IDE? Smalltalk tem IDE desde quando? O lisp comercial (e.g.
> >> LispWorks) não tem IDE? Ah, usa o Emacs! Até parece que é tão simples assim
> >> para alguém que está acostumado com um Ctl+C/Ctrl+V. Lembro que resolvi (há
> >> muito tempo) brincar com Mozart/OZ. A IDE era o Emacs. Que complicado na
> >> época. Desisti. Só depois de colocar na cabeça que desejava aprender a
> >> trabalhar com o Emacs é que consegui alguma coisa. E foi um trabalho de
> >> disciplina. O cara vai precisar de um tempo para se acostumar com
> >> Emacs+SLIME e mais um tempo para se acostumar com Lisp. De qualquer forma,
> >> IDE por IDE não faz uma linguagem se tornar mais ou menos apreciada. A IDE
> >> do factor é legalzinha, Eiffel tem IDE, Smalltalk também, etc, etc.
> >>
> >> Lisp também não é só pegar e mandar ver. Para alguém que conhece apenas um
> >> pouquinho, até algo simples como ax² + bx + c = 0 é mais trabalhoso do que
> >> outras linguagens. Considero como pedir para alguém começar a trabalhar
> >> apenas em hexadecimal. Só é necessário uma reeducação, já que passamos a
> >> nossa vida inteira com o sistema decimal. Mas quantas vezes já foi falado
> >> sobre a 'sintaxe' do Lisp?  Quantas vezes alguma alteração foi proposta e
> >> não foi bem aceita? Para mim, uma solução interessante foi a do Gambit.
> >>
> >> Depois tem o ambiente em si. Tirando os dois elefantes brancos, se eu quero
> >> aprender Ruby, tenho uma opção. Se quero aprender Python, tenho uma opção.
> >> Se quero Rebol, tenho uma opção. Se quero Lisp, já tenho que escolher entre
> >> várias. Se eu perguntasse aqui, certamente seriam várias opções entre CL e
> >> Scheme (pessoalmente considero duas coisas distintas). Cada qual com suas
> >> características.
> >>
> >> Finalmente a atitude. No tópico 'Problemão' do Higor, fiquei lendo
> >> galinhagens (nenhuma relação com chicken) em vez de soluções. Quando ele
> >> escreveu "... Acredito que fazendo em alto nivel depois seja mais simples
> >> fazer em lisp. ...", a melhor resposta seria a do Gustavo (parabéns pela
> >> resposta simples e eficaz). Depois poderiam ser adicionadas as brincadeiras
> >> e algumas risadinhas do tipo 'car car car car' :-)
> >>
> >> --
> >>
> >> Guaracy Monteiro
> >> http://fotomix.wordpress.com/
> >>
> >>
> >> --
> >> You received this message because you are subscribed to the Google Groups
> >> "Lisp-br" group.
> >> To post to this group, send email to [email protected].
> >> To unsubscribe from this group, send email to
> >> [email protected].
> >> For more options, visit this group at
> >> http://groups.google.com/group/lisp-br?hl=en.
> >>
> >>
> >
> >
> >
> >
> >--
> >Rafael Ibraim
> >Oracle Database SQL Expert
> >[email protected]
> >
> >
> >--
> >You received this message because you are subscribed to the Google Groups 
> >"Lisp-br" group.
> >To post to this group, send email to [email protected].
> >To unsubscribe from this group, send email to 
> >[email protected].
> >For more options, visit this group at 
> >http://groups.google.com/group/lisp-br?hl=en.
> >
> >
> 
> 
> -- 
> Marcelino Pinheiro
> 11-7980-0617
> 
> -- 
> You received this message because you are subscribed to the Google Groups 
> "Lisp-br" group.
> To post to this group, send email to [email protected].
> To unsubscribe from this group, send email to 
> [email protected].
> For more options, visit this group at 
> http://groups.google.com/group/lisp-br?hl=en.
> 
> 
> 
>       
> 
> -- 
> You received this message because you are subscribed to the Google Groups 
> "Lisp-br" group.
> To post to this group, send email to [email protected].
> To unsubscribe from this group, send email to 
> [email protected].
> For more options, visit this group at 
> http://groups.google.com/group/lisp-br?hl=en.
> 

-- 
Prof. Tarcisio Praciano-Pereira
_______________________________
[email protected]
Dep. de Computação - UVA
http://tarcisio.wordpress.com
http://www.sobralmatematica.org
http://lattes.cnpq.br/4382643649890787
Linux user number 370344
FSF member  # 6657

-- 
You received this message because you are subscribed to the Google Groups 
"Lisp-br" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/lisp-br?hl=en.

Responder a