Si Lisp es tan bueno
Mayo de 2003
Si Lisp es tan bueno, ¿por qué no lo usa más gente? Me hizo esta pregunta un estudiante de la audiencia en una charla que di recientemente. No era la primera vez, además.
En los lenguajes, como en tantas cosas, no hay mucha correlación entre popularidad y calidad. ¿Por qué John Grisham (El Rey de las Tortas puesto de ventas, 44) vende más que Jane Austen (Orgullo y Prejuicio puesto de ventas, 6191)? ¿Incluso Grisham afirmaría que es porque es un mejor escritor?
Aquí está la primera frase de Orgullo y Prejuicio:
Es una verdad universalmente reconocida, que un hombre soltero, poseedor de una gran fortuna, necesita una esposa.
"¿Es una verdad universalmente reconocida?" Palabras largas para la primera frase de una historia de amor.
Al igual que Jane Austen, Lisp parece difícil. Su sintaxis, o falta de sintaxis, hace que parezca completamente diferente a los lenguajes a los que la mayoría de la gente está acostumbrada. Antes de aprender Lisp, yo también le tenía miedo. Recientemente encontré un cuaderno de 1983 en el que había escrito:
Supongo que debería aprender Lisp, pero parece tan ajeno.
Afortunadamente, tenía 19 años en ese momento y no era demasiado reacio a aprender cosas nuevas. Era tan ignorante que aprender casi cualquier cosa significaba aprender cosas nuevas.
La gente asustada por Lisp inventa 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 se encuentran entre los lenguajes más rápidos 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 auto-perpetúa, pero es especialmente así en los lenguajes de programación. Se escriben más bibliotecas para los lenguajes populares, lo que los hace aún más populares. Los programas a menudo tienen que funcionar con programas existentes, y esto es más fácil si están escritos en el mismo lenguaje, por lo que los lenguajes se propagan de programa a programa como un virus. Y los gerentes prefieren los 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 todos más o menos equivalentes, habría poca justificación para usar alguno que no fuera el más popular. Pero no lo son, ni mucho menos. Y es por eso que los lenguajes menos populares, como las novelas de Jane Austen, continúan sobreviviendo. Cuando todos los demás están leyendo la última novela de John Grisham, siempre habrá algunas personas leyendo Jane Austen en su lugar.