SE LISP É TÃO ÓTIMO
OriginalMaio de 2003
Se Lisp é tão ótimo, por que mais pessoas não o usam? Fui perguntado essa questão por um estudante na plateia em uma palestra que dei recentemente. Não é a primeira vez, também.
Em linguagens, como em tantas coisas, não há muita correlação entre popularidade e qualidade. Por que John Grisham (King of Torts classificação de vendas, 44) vende mais que Jane Austen (Pride and Prejudice classificação de vendas, 6191)? Até mesmo Grisham diria que é porque ele é um escritor melhor?
Aqui está a primeira frase de Pride and Prejudice:
É uma verdade universalmente reconhecida que um homem solteiro na posse de uma boa fortuna deve estar à procura de uma esposa.
"É uma verdade universalmente reconhecida?" Palavras longas para a primeira frase de uma história de amor.
Como Jane Austen, Lisp parece difícil. Sua sintaxe, ou a falta de sintaxe, faz com que pareça completamente diferente das linguagens que a maioria das pessoas está acostumada. Antes de aprender Lisp, eu também tinha medo dele. Recentemente, encontrei um caderno de 1983 no qual escrevi:
Suponho que eu deva aprender Lisp, mas parece tão estranho.
Felizmente, eu tinha 19 anos na época e não era muito resistente a aprender coisas novas. Eu era tão ignorante que aprender quase qualquer coisa significava aprender coisas novas.
As pessoas assustadas com Lisp inventam outras razões para não usá-lo. A desculpa padrão, quando C era a linguagem padrão, era que Lisp era muito lento. Agora que os dialetos Lisp estão entre as linguagens mais rápidas disponíveis, essa desculpa desapareceu. Agora a desculpa padrão é abertamente circular: que outras linguagens são mais populares.
(Cuidado com esse tipo de raciocínio. Isso te leva ao Windows.)
A popularidade é sempre auto-perpetuante, mas é especialmente assim em linguagens de programação. Mais bibliotecas são escritas para linguagens populares, o que as torna ainda mais populares. Programas muitas vezes têm que trabalhar com programas existentes, e isso é mais fácil se forem escritos na mesma linguagem, então as linguagens se espalham de programa para programa como um vírus. E os gerentes preferem linguagens populares, porque elas lhes dão mais influência sobre os desenvolvedores, que podem ser mais facilmente substituídos.
De fato, se as linguagens de programação fossem todas mais ou menos equivalentes, não haveria muita justificativa para usar qualquer uma que não fosse a mais popular. Mas elas não são todas equivalentes, nem de longe. E é por isso que linguagens menos populares, como os romances de Jane Austen, continuam a sobreviver. Quando todos os outros estão lendo o mais recente romance de John Grisham, sempre haverá algumas pessoas lendo Jane Austen em vez disso.