[Haskell-cafe] Documenting extensions

Richard Eisenberg eir at cis.upenn.edu
Wed Apr 6 08:50:08 UTC 2016

On Apr 5, 2016, at 10:12 PM, Doug McIlroy <doug at cs.dartmouth.edu> wrote:

> I understand that many GHC extensions are probationary. Nevertheless,
> in the interest of facilitating their full and correct use, I would
> plead that a report-grade description accompany each language feature
> incorporated in official releases. This seems like a small amount
> of effort beyond the hard work of conception and implementation.
> Are there cogent reasons for doing otherwise?

Yes: we're imperfect humans with limited time. This, of course, cannot be a reason not to strive for this ideal. I would like to suggest a slight softening of this proposal: that every extension included in a release be given either a label as probationary (with a mention of its first release) or such a specification. Some extensions end up in released versions of GHC before they are fully settled, as the process of wide release gives feedback to the extension author and allows for improvement in future releases. PolyKinds/DataKinds/ConstraintKinds fit into this category in 7.4, and TypeApplications and TypeInType fit into this category for 8.0. PatternSynonyms has also undergone a bit of churn. However, older extension do deserve this level of documentation.

Care to post a feature request?


More information about the Haskell-Cafe mailing list