Solía recomendar que para aprender programación funcional, uno debería aprender Haskell. Hoy en día, creo que ese consejo no es tan óptimo. La razón por la que Haskell es difícil es por el enorme sistema de tipos, no porque sea funcional. Una mejor vía para la programación funcional sería un derivado de Lisp como Racket o Clojure. De esa manera te enfocas en la recursión y los patrones de diseño funcionales en lugar del sistema de tipos. (Aún creo que todos deberían aprender Haskell en algún momento, tanto por el sistema de tipos como por el aspecto de programación funcional). Dado que la IA estará escribiendo la mayor parte del código en el futuro, me parece que la habilidad de un programador es especificar rigurosamente qué comportamiento se espera, y luego dejar que la IA se encargue de ello. Haskell es uno de los principales lenguajes para especificaciones rigurosas. También un poco de historia divertida sobre mí: usé Clojure en producción en un momento simplemente porque podía y estaba aburrido de los lenguajes comunes. Básicamente era indespedible, así que mi jefe tuvo que aceptar, aunque él estaba (con razón) escéptico sobre usar un lenguaje para el cual es imposible contratar. Sí, yo era ese programador antes.
3,07K