Originalmente provenía de un fondo C / C ++ / Ruby y usaba conceptos de FP en Ruby siempre que podía. Estado sólo un poco lastimar mi cerebro. Uno de mis amigos me llamó un día y me pidió que escribiera algo en Haskell (¡mi primer trabajo de Haskell (y, con suerte, no el último)!). Aprendí rápidamente el idioma y junté algo que funcionó. No era hermoso ni nada, pero funcionó.
Tomé un mes de descanso de Haskell porque no tenía nada para usar. Pero cuando decidí que necesitaba escribir mi propio software de blog, usé Haskell ( enlace ). Haskell es realmente bueno porque puede dividir un problema en partes e implementar estas partes de manera diferente según la entrada. Haskell también maneja las fallas extremadamente bien a través del boxeo inteligente de valores. Hay tantas herramientas para trabajar con estas cajas que simplemente olvidas que existen.
Mi experiencia con lisp (Scheme) fue completamente negativa. El lenguaje no solo carecía de estas herramientas inteligentes y simples, sino que se sentía tan peligrosamente suelto como Ruby o JavaScript. Fue una experiencia horrible y no ofrece nada nuevo más allá de Ruby o Python.
C ++ no puede ofrecerle una vela a Haskell, fuera de la administración de memoria. Haskell es igual de rápido (si no más rápido), significativamente más terso y mucho más seguro. Pero la seguridad de Haskell nunca se interpone en el camino.
TL; TR Haskell es un soplo de aire fresco, y Lisp es un Ruby un poco más funcional.