Hacker News new | past | comments | ask | show | jobs | submit login

Quick question, since we have an author of RWH here for the moment -- most resources (including RWH) don't seem to mention Template Haskell or GHC type extensions.

Is this because they're nonstandard or do you disagree with their use cases? (For example, the section on Monad transformers in RWH is used similarly to the way implicit parameters might be used if enabled).




They come with GHC, but they're mostly not standardized. And there's more than 50 language extensions. They're not usually mentioned in texts, as they're usually necessary only for advanced user, or very small niches.

However, if you're are medium to advanced Haskell user, you should know about the common language extensions:

* GADTS * Template Haskell * EmptyDataDecls * ExistentialQuantification * GeneralizedNewtypeDeriving * KindSignatures * MonadComprehensions * QuasiQuotes * RankNTypes * RecordWildCards * Safe mode * TypeFamilies * ViewPatterns * UnicodeSyntax

Some of them have very good power to weight ratios.

Each extension has a niche it excels at, and knowing when to recognize that you're in that niche takes time.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: