Die Haskell-Kernsprache ist wirklich einfach. Ausgehend von einem OO-Hintergrund besteht die Hauptschwierigkeit darin, sich an das reine Funktionsparadigma anzupassen.
Während ich "grundlegendes" Haskell lernte, habe ich Spracherweiterungen immer als Spielzeug für CS-Leute oder als Experimente für zukünftige Versionen der Sprache (wie from future import ???
in Python) betrachtet.
Als ich mich jedoch mit Web-Frameworks wie Yesod befasste, stellte ich fest, dass für viele Quelldateien zwischen 3 und 4 Erweiterungen erforderlich sind. Einige sehen recht einfach aus (StringOverload). Andere sind wirklich einschüchternd (GADT, Type Famillies, Template Haskell). Ihre Dokumentation enthält Links zu Forschungsarbeiten, was für jemanden, der erwartet, "nur" eine neue Bibliothek zu lernen, beängstigend ist.
Ist es notwendig, GHC-Spracherweiterungen zu lernen, um in Haskell produktiv zu sein? Wenn Sie einen Haskell-Entwickler für eine Produktionsanwendung einstellen würden, würden Sie nach diesem Wissen fragen?