A Linguagem Haskell, criada em 1990, já possuia soluções para lidar com a Avaliação preguiçosa, Imutabilidade e Efeitos colaterais.
Por ex: Em Haskell não é possível modificar uma lista, apenas é possível gerar uma nova lista com os valores transformados.
A Linguagem Haskell tem uma curva de aprendizado muito grande. Normalmente é usada para fins acadêmicos, razão pela qual há poucos projectos na Indústria de Software.
Embora a Linguagem Haskell seja pouco usada em projectos do mundo real, é importante estudar para entender a origem de conceitos amplamente usdados nas linguagens do mercado.
Conceitos como Lazy Evaluation, Lambda Expression, List Comprehension, Map, Filter, Reduce, Monads, Foldr e outros, têm resolvido problemas computacionais(Side Effect e Mutability) encontrados nas Linguagens Imperativas e Orientadas a Objectos.
Nos últimos, em Linguagens como: Javascript, Python, C#, Java, Kotlin, etc, têm surgido novas features baseadas nos conceitos de Linguagens Funcionais.
Top comments (0)