Estou estudando Haskell com o objetivo de entender a programação funcional, com a expectativa de aplicar a percepção que obtiver em outras linguagens (principalmente Groovy, Python, JavaScript).
Escolhi Haskell porque tive a impressão de que é muito puramente funcional e não permitiria nenhuma confiança no estado.
Não escolhi aprender Haskell porque estava interessado em navegar em um sistema do tipo extremamente rígido.
Minha pergunta é a seguinte: Um sistema de tipo forte é um subproduto necessário de uma linguagem funcional extremamente pura ou é uma opção de design não relacionada específica da Haskell?