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.
