¿Existe un tutorial o libro canónico sobre conceptos de programación funcional? [cerrado]

22

Viniendo de un fondo de programación procedimental / OO, tiendo a escribir programas Scheme de manera procesal. Me interesaría aprender Scheme o Lisp de una manera funcional desde cero, para restablecer la mente de mi programador.

¿Existe algún tutorial o libro que sea el estándar de facto para describir las mejores prácticas, metodologías de diseño y otra información útil sobre conceptos de programación funcional? ¿Qué hay de ese libro que lo hace especial?

Federico klez Culloca
fuente
Comenzaría con ccs.neu.edu/home/matthias/BTLS La programación funcional se parece más a la matemática pura que a la programación OO. Si lo piensa de esa manera, puede ayudar.
Brian Makin
Si prefiere escuchar la lectura, SICP también tiene conferencias en video . Estoy en la clase 6b ahora. :)
Dysaster
Echa un vistazo a Land of Lisp y haz todos los ejercicios.
Sardathrion - Restablece a Monica el

Respuestas:

14

Úsalo.

Si realiza una programación funcional a diario, tal vez aplicaciones más pequeñas o ejercicios de libros, entonces será mejor.

Lo he usado desde la primera conferencia de programación en la universidad. Al principio fue muy difícil, porque es muy diferente, pero ahora lo prefiero a la programación imperativa.

Si está buscando un buen libro, recomendaría la programación funcional del mundo real: con ejemplos en F # y C # de Tomas Petricek y Jon Skeet

Jonas
fuente
1
El libro se puede consultar aquí también: msdn.microsoft.com/en-us/library/hh314518.aspx
Gulshan
11

El libro que siempre veo recomendado cuando hablo de Scheme o Lisp es La estructura e interpretación de los programas de computadora . Está disponible gratuitamente en ese sitio web, y creo que se proporciona como un PDF si busca alrededor.

He tenido la intención de trabajar en ello, pero no estoy seguro de cuándo tendré tiempo. Sin embargo, no puedo comentar qué tan bueno es realmente el libro. Pero ha sido recomendado por varias personas, así que supongo que es bastante bueno.

Si está interesado en otros lenguajes de programación funcionales, me han dicho que es bastante fácil hacer los ejercicios en lenguajes como Haskell o F #. Creo que también hay un blogger que está trabajando a través de SICP usando Haskell y publicando sus soluciones para los ejercicios, pero no puedo encontrar el enlace en este momento.

Thomas Owens
fuente
¿Quién es Bill the Lizard billthelizard.com por 500 por favor? Aunque creo que está usando el esquema.
Brian R. Bondy
Sí, estoy de acuerdo con que SICP sea ​​un excelente libro para aprender FP en Scheme. Si no está casado con Scheme, pero consideraría aprender Haskell, entonces Real World Haskell es una excelente lectura también.
Magnus
+1 para SICP. He estado trabajando en partes con Clojure, siempre y cuando estés dispuesto a hacer un poco de gimnasia mental, creo que funcionaría para cualquier lenguaje funcional o similar a Lisp.
mikera
2
También hay Cómo diseñar programas , que fue diseñado específicamente para abordar algunas deficiencias en el SICP, que se describen en el documento muy accesible y hábilmente titulado The Structure and Interpretation of the Computer Science Curriculum .
Jörg W Mittag
-2

Intenta aprender algo de matemáticas y adaptarte a su estilo. ¿Qué son las funciones? ¿Qué es una variable? ¿Cómo difieren las variables de las constantes y cómo no?

Antsan
fuente
Eso realmente no responde la pregunta, que trata más sobre dónde encontrar respuestas a las preguntas que está proporcionando.
Matthieu