Il linguaggio di base di Haskell è davvero semplice. Venendo da uno sfondo OO, la difficoltà principale è quella di adattarsi al paradigma funzionale puro.
Durante l'apprendimento di Haskell "base", ho sempre considerato le estensioni linguistiche come giocattoli per le persone CS o come esperimenti per versioni future del linguaggio (come from future import ???
in python).
Tuttavia, quando ho iniziato a guardare i framework web come Yesod, ho trovato che molti file sorgente richiedono tra 3 e amp; 4 estensioni. Alcuni sembrano abbastanza semplici (StringOverload). Altri sono davvero intimidatori (GADT, Type Famillies, Template Haskell). La loro documentazione si collega a documenti di ricerca, il che è spaventoso per qualcuno che si aspetta di imparare "solo" una nuova biblioteca.
È necessario imparare le estensioni del linguaggio GHC per essere produttivi in Haskell? Se dovessi assumere uno sviluppatore Haskell per un'applicazione di produzione, chiederesti tali conoscenze?