Datos esenciales
1990, especificación por el comité académico liderado por Paul Hudak, Philip Wadler y otros. Lenguaje funcional puro, tipado estático y fuerte, evaluación lazy por defecto.
Lenguaje #17
Funcional puro, evaluación lazy y un sistema de tipos expresivo. Haskell sirvió como laboratorio de ideas que inspiraron a lenguajes modernos y a nuevas formas de pensar la composición y la seguridad.
1990, especificación por el comité académico liderado por Paul Hudak, Philip Wadler y otros. Lenguaje funcional puro, tipado estático y fuerte, evaluación lazy por defecto.
Nace de la necesidad de unificar lenguajes funcionales académicos. Haskell 1.0 (1990) formaliza el núcleo; Haskell 98 ofrece una versión estable para enseñanza e industria. Extensiones GHC agregan typeclasses avanzadas, GADTs, TypeFamilies, STM y soporte moderno.
Paul Hudak, Philip Wadler, Simon Peyton Jones, John Hughes, Lennart Augustsson. Simon Peyton Jones lidera GHC, el compilador de referencia. Wadler impulsa monads en programación funcional.
Enseñanza de programación funcional, prototipado de DSLs, sistemas de compilación, servidores web (Yesod, Servant), fintech y blockchains (Cardano/Plutus), análisis estático y herramientas de verificación.
Expresiones, pattern matching, funciones de orden superior, listas por comprensión, typeclasses (Eq, Ord, Monad), módulos, newtypes, algebraic data types, monads y applicatives, STM para concurrencia.
GHC y GHCi, Cabal y Stack para build, Hackage como repositorio de paquetes, frameworks web (Yesod, Scotty, Servant), QuickCheck para pruebas basadas en propiedades, STM en la librería estándar.
Popularizó las monads en programación práctica, inspirando a Scala, Rust (Result/Option), Swift (Optionals) y Java/Kotlin con lambdas. Laziness y typeclasses influyeron en el diseño de sistemas de tipos modernos.
El meme “avoid success at all costs” reflejaba su espíritu experimental. QuickCheck mostró el poder de las pruebas basadas en propiedades. Las discusiones sobre monads son parte del folklore FP.
GHC se actualiza regularmente, comunidades activas en Hackage y Stack. Usado en nichos industriales (fintech, blockchain) y como referencia académica para diseño de tipos y concurrencia.