SI LISP ES TAN GENIAL
OriginalMayo 2003
Si Lisp es tan genial, ¿por qué no lo usa más gente? Me hicieron esta pregunta en una charla que di recientemente por un estudiante en la audiencia. No es la primera vez que me la hacen.
En los lenguajes, como en tantas cosas, no hay mucha correlación entre popularidad y calidad. ¿Por qué John Grisham (King of Torts rango de ventas, 44) vende más que Jane Austen (Pride and Prejudice rango de ventas, 6191)? ¿Acaso Grisham diría que es porque es un mejor escritor?
Aquí está la primera oración de Pride and Prejudice:
Es una verdad universalmente reconocida que un hombre soltero en posesión de una buena fortuna debe estar en busca de una esposa.
"¿Es una verdad universalmente reconocida?" Palabras largas para la primera oración de una historia de amor.
Al igual que Jane Austen, Lisp parece difícil. Su sintaxis, o la falta de sintaxis, hace que se vea completamente diferente de los lenguajes a los que la mayoría de la gente está acostumbrada. Antes de aprender Lisp, también tenía miedo de él. Recientemente encontré un cuaderno de 1983 en el que había escrito:
Supongo que debería aprender Lisp, pero parece tan extraño.
Afortunadamente, tenía 19 años en ese momento y no era demasiado resistente a aprender cosas nuevas. Era tan ignorante que aprender casi cualquier cosa significaba aprender cosas nuevas.
Las personas asustadas por Lisp inventan otras razones para no usarlo. La excusa estándar, cuando C era el lenguaje por defecto, era que Lisp era demasiado lento. Ahora que los dialectos de Lisp están entre los más rápidos lenguajes disponibles, esa excusa ha desaparecido. Ahora la excusa estándar es abiertamente circular: que otros lenguajes son más populares.
(Cuidado con ese razonamiento. Te lleva a Windows.)
La popularidad siempre se perpetúa a sí misma, pero es especialmente así en los lenguajes de programación. Se escriben más bibliotecas para lenguajes populares, lo que los hace aún más populares. Los programas a menudo tienen que trabajar con programas existentes, y esto es más fácil si están escritos en el mismo lenguaje, así que los lenguajes se propagan de programa a programa como un virus. Y los gerentes prefieren lenguajes populares, porque les dan más influencia sobre los desarrolladores, que pueden ser reemplazados más fácilmente.
De hecho, si los lenguajes de programación fueran más o menos equivalentes, habría poca justificación para usar cualquier otro que no sea el más popular. Pero no son todos equivalentes, ni de lejos. Y por eso los lenguajes menos populares, como las novelas de Jane Austen, siguen sobreviviendo. Cuando todos los demás están leyendo la última novela de John Grisham, siempre habrá algunas personas leyendo a Jane Austen en su lugar.