Em este artigo da Wikipedia sobre Turing completude afirma que:
O cálculo lambda não digitado é Turing completo, mas muitos cálculos lambda digitados, incluindo o Sistema F, não são. O valor dos sistemas digitados é baseado em sua capacidade de representar a maioria dos programas de computador típicos enquanto detecta mais erros.
Qual é um exemplo de uma função computável total que é incontestável pelo sistema F ?
Além disso, como hindley-milner é:
Uma restrição do Sistema F
devido ao facto de:
a verificação de tipo é indecidível para uma variante no estilo Curry do Sistema F, ou seja, que não possui anotações de digitação explícitas.
Isso significa que o cálculo lambda subjacente aos sistemas do tipo hindley-milner também não está completo?
Se isso for verdade, como o haskell está claramente completo e sabemos que sua base é o cálculo lambda e o sistema do tipo hindley-milner, que recursos que não estão presentes no cálculo lambda são adicionados para tornar o haskell completo?
system T vs. system F
, encontrei algo que responde à minha subquestão final que é reformulada aqui como: Como o haskell adicionou o Turing-completeness ao System F