En el camino hacia la Iluminación: ¿Esquema, Lisp común, Clojure? [cerrado]

26

Mucha gente más inteligente que yo sigue escribiendo cuando aprendes Lisp, te hace un mejor programador porque "lo entiendes".

Tal vez todo lo que escucho sobre Lisp (s) cambiando tu vida es solo una gran broma práctica para los novatos, pero creo que no hay daño en saber más sobre el mundo, incluso si descubro que me han enviado después de un francotirador o algo así. .

Me gustaría seguir el libro SICP, o ANSI Common Lisp, pero al mismo tiempo estudiar un dialecto y una implementación que pueda usar en proyectos personales.

SICP se centra en Scheme, por lo que es un gran voto. Paul Graham dijo que si enseñara a los novatos lo haría en Scheme, pero parecía que Scheme todavía era inferior a Common Lisp. Pero luego está Clojure, que me dicen que es limitado en algunos aspectos, pero más práctico en otros (bibliotecas JVM).

Parece que podría superar los materiales de Scheme más fácilmente, lograr la iluminación "real" de CL, o acercarme lo suficiente a Clojure y ser capaz de hacer más cosas a largo plazo.

¿Cuánto de todo eso es verdad? ¿Cuándo debería dejar de pensar en qué aprender y simplemente ir y aprender sobre eso?

Conrad.Dean
fuente
44
+1 pero ten cuidado, no todos son agradables aquí, mira lo que sucedió con esto: programmers.stackexchange.com/users/39479
Cedric Martin el
1
Hola Conrad, "¿qué idioma debo aprender a continuación?" No está en el tema aquí.
@ MarkTrapp Mis disculpas. Pensé que la pregunta "¿Qué idioma es mejor para [x]?" todavía estaba en el tema porque se trata de elegir la herramienta adecuada para el trabajo. Pensé que había muchas personas que querían saber las ventajas de estudiar algo con una reputación académica en comparación con una herramienta similar que tiene acceso a una plataforma establecida. ¿Sigue siendo motivo de cierre?
Conrad
2
@ MarkTrapp Creo que esta es una buena pregunta. El panorama lisp puede ser confuso para navegar al principio, y el OP tiene algunos criterios específicos para ayudar a las personas a juzgar una respuesta adecuada. Creo que esta pregunta no es tan vaga como "¿Qué idioma debo aprender a continuación?".
benekastah

Respuestas:

19

Tal vez todo lo que escucho sobre Lisp (s) cambiando tu vida es solo una gran broma práctica para los novatos

Absolutamente no es cierto, no es una broma.
Con Lisp vas a construir lo que quieras, incluso tu propio lenguaje de programación.

Te iluminarás sin importar lo que elijas, ya sea CL, Scheme o Clojure.
Personalmente, recomiendo que aprendas Clojure, ya que es un Lisp activo, un dialecto práctico que admite la programación concurrente de una manera elegante y se ejecuta en la JVM (gran punto de venta).

ClojureScript lleva a Lisp a la programación del lado del cliente, lo cual es realmente genial.

Y, por cierto, SICP está disponible en Clojure .

Bienvenido a bordo :)

Quirón
fuente
La traducción Clojure de SICP es realmente emocionante para mí. La última vez que lo revisé seguía siendo un trabajo en progreso, pero ya debe estar más avanzado. ¿Alguien puede comentar cómo esta traducción aún conserva el nirvana que obtienes al leer SICP?
Conrad
@ Conrad.Dean: Bueno, todavía tiene una advertencia bastante destacada: "No deberías estar aquí todavía. En realidad, eres más que bienvenido a mirar alrededor. Evitaré colocar gifs de conos de tráfico y señales de alto , pero este sitio está en construcción, y aún no está cerca de ser útil ".
Jerry Coffin el
3
El cierre de la traducción SICP está MUERTO desde 2009, eso es triste porque las soluciones existen en clojure ...
AndreasScheinert
si realmente quieres cambiar tu vida, aprende, esquema, prólogo y C, en ese orden. Python también vale la pena oler dos o dos. Luego, si tu cabeza aún no explotó, ve y diseña tus propios lenguajes de programación, o ayuda a perfeccionar otros nuevos lenguajes.
Sam Watkins
7

Parece que podría superar los materiales de Scheme más fácilmente, lograr la iluminación "real" de CL, o acercarme lo suficiente a Clojure y ser capaz de hacer más cosas a largo plazo.

No esperes milagros. Trabajar en un lenguaje como Scheme expandirá sus horizontes y probablemente le enseñará un poco sobre cómo se ejecutan los programas, pero no es un boleto expreso a la Esfera de la Conciencia Infinita.

¿Cuándo debería dejar de pensar en qué aprender y simplemente ir y aprender sobre eso?

Aproximadamente 7 segundos después de que termine de leer esta respuesta.

Caleb
fuente
5

Si quieres comenzar con SICP, ve con el esquema, solo porque eso es lo que enseña el libro. Pasar de Scheme a Clojure será bastante fácil.

Zachary K
fuente
¿Puede comentar si los puntos principales de SICP se traducen en el proyecto SICP en Clojure , o se pierde algo entre el esquema y el clojure?
Conrad
1
Para ser sincero, ha pasado demasiado tiempo desde que lancé SICP y no pasé mucho tiempo con Clojure. Lo importante sobre SICP no es el esquema, es entender el modelo de cálculo que están trabajando.
Zachary K