mirror of
https://github.com/sdiehl/wiwinwlh.git
synced 2024-08-16 15:30:35 +03:00
1202 lines
31 KiB
HTML
1202 lines
31 KiB
HTML
<table class="table-striped">
|
|
<tr class="striped-header">
|
|
<td></td>
|
|
<td>Benign</td>
|
|
<td>Historical</td>
|
|
<td>Steals Syntax</td>
|
|
<td>Use</td>
|
|
<td>Use</td>
|
|
<td>GHC Reference</td>
|
|
<td>Reference</td>
|
|
</tr>
|
|
<tr>
|
|
<td>AllowAmbiguousTypes</td>
|
|
<td></td>
|
|
<td></td>
|
|
<td></td>
|
|
<td>Specialized</td>
|
|
<td>Typelevel Programming</td>
|
|
<td><a href=
|
|
"http://www.haskell.org/ghc/docs/7.8.4/html/users_guide/other-type-extensions.html#ambiguity">
|
|
Ref</a></td>
|
|
<td></td>
|
|
</tr>
|
|
<tr>
|
|
<td>Arrows</td>
|
|
<td></td>
|
|
<td></td>
|
|
<td>✓</td>
|
|
<td>Specialized</td>
|
|
<td>Syntax Extension</td>
|
|
<td><a href=
|
|
"http://www.haskell.org/ghc/docs/7.8.4/html/users_guide/arrow-notation.html">
|
|
Ref</a></td>
|
|
<td><a href="#arrows">Arrows</a></td>
|
|
</tr>
|
|
<tr>
|
|
<td>AutoDeriveTypeable</td>
|
|
<td>✓</td>
|
|
<td></td>
|
|
<td></td>
|
|
<td>Specialized</td>
|
|
<td>Deriving</td>
|
|
<td><a href=
|
|
"http://www.haskell.org/ghc/docs/7.8.4/html/users_guide/deriving.html#auto-derive-typeable">
|
|
Ref</a></td>
|
|
</tr>
|
|
<tr>
|
|
<td>BangPatterns</td>
|
|
<td>✓</td>
|
|
<td></td>
|
|
<td>✓</td>
|
|
<td>General</td>
|
|
<td>Strictness Annotation</td>
|
|
<td><a href=
|
|
"http://www.haskell.org/ghc/docs/7.8.4/html/users_guide/bang-patterns.html">
|
|
Ref</a></td>
|
|
<td><a href="#strictness-annotations">Strictness Annotations</a></td>
|
|
</tr>
|
|
<tr>
|
|
<td>ApplicativeDo</td>
|
|
<td></td>
|
|
<td></td>
|
|
<td></td>
|
|
<td>Specialized</td>
|
|
<td>FFI</td>
|
|
<td><a href=
|
|
"http://www.haskell.org/ghc/docs/7.8.4/html/users_guide/ffi.html#ffi-capi">Ref</a></td>
|
|
<td><a href="#applicative-do">Applicative Do</td>
|
|
</tr>
|
|
<tr>
|
|
<td>CApiFFI</td>
|
|
<td></td>
|
|
<td></td>
|
|
<td></td>
|
|
<td>Specialized</td>
|
|
<td>FFI</td>
|
|
<td><a href=
|
|
"http://www.haskell.org/ghc/docs/7.8.4/html/users_guide/ffi.html#ffi-capi">Ref</a></td>
|
|
</tr>
|
|
<tr>
|
|
<td>ConstrainedClassMethods</td>
|
|
<td>✓</td>
|
|
<td></td>
|
|
<td></td>
|
|
<td>Specialized</td>
|
|
<td>Typelevel Programming</td>
|
|
<td><a href=
|
|
"http://www.haskell.org/ghc/docs/7.8.4/html/users_guide/type-class-extensions.html#class-method-types">
|
|
Ref</a></td>
|
|
</tr>
|
|
<tr>
|
|
<td>ConstraintKinds</td>
|
|
<td>✓</td>
|
|
<td></td>
|
|
<td></td>
|
|
<td>Specialized</td>
|
|
<td>Typelevel Programming</td>
|
|
<td><a href=
|
|
"http://www.haskell.org/ghc/docs/7.8.4/html/users_guide/constraint-kind.html">
|
|
Ref</a></td>
|
|
<td><a href="#constraint-kinds">Constraint Kinds</a></td>
|
|
</tr>
|
|
<tr>
|
|
<td>CPP</td>
|
|
<td></td>
|
|
<td></td>
|
|
<td>✓</td>
|
|
<td>General</td>
|
|
<td>Preprocessor</td>
|
|
<td><a href=
|
|
"http://www.haskell.org/ghc/docs/7.8.4/html/users_guide/options-phases.html#c-pre-processor">
|
|
Ref</a></td>
|
|
<td><a href="#cpp">Cpp</a></td>
|
|
</tr>
|
|
<tr>
|
|
<td>DataKinds</td>
|
|
<td>✓</td>
|
|
<td></td>
|
|
<td></td>
|
|
<td>Specialized</td>
|
|
<td>Typelevel Programming</td>
|
|
<td><a href=
|
|
"http://www.haskell.org/ghc/docs/7.8.4/html/users_guide/promotion.html">Ref</a></td>
|
|
<td><a href="#data-kinds">Data Kinds</a></td>
|
|
</tr>
|
|
<tr>
|
|
<td>DatatypeContexts</td>
|
|
<td></td>
|
|
<td>✓</td>
|
|
<td></td>
|
|
<td>Deprecated</td>
|
|
<td>Deprecated</td>
|
|
<td><a href=
|
|
"http://www.haskell.org/ghc/docs/7.8.4/html/users_guide/data-type-extensions.html#datatype-contexts">
|
|
Ref</a></td>
|
|
</tr>
|
|
<tr>
|
|
<td>DefaultSignatures</td>
|
|
<td>✓</td>
|
|
<td></td>
|
|
<td></td>
|
|
<td>Specialized</td>
|
|
<td>Generic Programming</td>
|
|
<td><a href=
|
|
"http://www.haskell.org/ghc/docs/7.8.4/html/users_guide/type-class-extensions.html#class-default-signatures">
|
|
Ref</a></td>
|
|
<td><a href="#generic">Generic</a></td>
|
|
</tr>
|
|
<tr>
|
|
<td>DeriveAnyClass</td>
|
|
<td>✓</td>
|
|
<td></td>
|
|
<td></td>
|
|
<td>General</td>
|
|
<td>Deriving</td>
|
|
<td><a href=
|
|
"https://downloads.haskell.org/~ghc/latest/docs/html/users_guide/deriving.html#derive-any-class">
|
|
Ref</a></td>
|
|
</tr>
|
|
<tr>
|
|
<td>DeriveDataTypeable</td>
|
|
<td>✓</td>
|
|
<td></td>
|
|
<td></td>
|
|
<td>General</td>
|
|
<td>Deriving</td>
|
|
<td><a href=
|
|
"http://www.haskell.org/ghc/docs/7.8.4/html/users_guide/deriving.html#deriving-typeable">
|
|
Ref</a></td>
|
|
<td><a href="#typeable">Typeable</a></td>
|
|
</tr>
|
|
<tr>
|
|
<td>DeriveFoldable</td>
|
|
<td>✓</td>
|
|
<td></td>
|
|
<td></td>
|
|
<td>General</td>
|
|
<td>Deriving</td>
|
|
<td><a href=
|
|
"http://www.haskell.org/ghc/docs/7.8.4/html/users_guide/deriving.html#deriving-typeable">
|
|
Ref</a></td>
|
|
<td><a href="#foldable-traversable">Foldable / Traversable</a></td>
|
|
</tr>
|
|
<tr>
|
|
<td>DeriveFunctor</td>
|
|
<td>✓</td>
|
|
<td></td>
|
|
<td></td>
|
|
<td>General</td>
|
|
<td>Deriving</td>
|
|
<td><a href=
|
|
"http://www.haskell.org/ghc/docs/7.8.4/html/users_guide/deriving.html#deriving-typeable">
|
|
Ref</a></td>
|
|
</tr>
|
|
<tr>
|
|
<td>DeriveGeneric</td>
|
|
<td>✓</td>
|
|
<td></td>
|
|
<td></td>
|
|
<td>General</td>
|
|
<td>Deriving</td>
|
|
<td><a href=
|
|
"http://www.haskell.org/ghc/docs/7.8.4/html/users_guide/deriving.html#deriving-typeable">
|
|
Ref</a></td>
|
|
<td><a href="#generic">Generic</a></td>
|
|
</tr>
|
|
<tr>
|
|
<td>DeriveLift</td>
|
|
<td>✓</td>
|
|
<td></td>
|
|
<td></td>
|
|
<td>General</td>
|
|
<td>Deriving</td>
|
|
<td><a href=
|
|
"http://www.haskell.org/ghc/docs/7.8.4/html/users_guide/deriving.html#deriving-typeable">
|
|
Ref</a></td>
|
|
<td><a href="#template-haskell">Template Haskell</a></td>
|
|
</tr>
|
|
<tr>
|
|
<td>DeriveTraversable</td>
|
|
<td>✓</td>
|
|
<td></td>
|
|
<td></td>
|
|
<td>General</td>
|
|
<td>Deriving</td>
|
|
<td><a href=
|
|
"http://www.haskell.org/ghc/docs/7.8.4/html/users_guide/deriving.html#deriving-typeable">
|
|
Ref</a></td>
|
|
</tr>
|
|
<tr>
|
|
<td>DisambiguateRecordFields</td>
|
|
<td>✓</td>
|
|
<td></td>
|
|
<td>✓</td>
|
|
<td>Specialized</td>
|
|
<td>Syntax Extension</td>
|
|
<td><a href=
|
|
"http://www.haskell.org/ghc/docs/7.8.4/html/users_guide/syntax-extns.html#disambiguate-fields">
|
|
Ref</a></td>
|
|
</tr>
|
|
<tr>
|
|
<td>DuplicateRecordFields</td>
|
|
<td>✓</td>
|
|
<td></td>
|
|
<td>✓</td>
|
|
<td>Specialized</td>
|
|
<td>Syntax Extension</td>
|
|
<td><a href=
|
|
"http://www.haskell.org/ghc/docs/7.8.4/html/users_guide/syntax-extns.html#disambiguate-fields">
|
|
Ref</a></td>
|
|
<td><a href="#duplicaterecordfields">DuplicateRecordFields</a></td>
|
|
</tr>
|
|
<tr>
|
|
<td>DoRec</td>
|
|
<td></td>
|
|
<td>✓</td>
|
|
<td>✓</td>
|
|
<td>Specialized</td>
|
|
<td>Syntax Extension</td>
|
|
<td><a href=
|
|
"http://www.haskell.org/ghc/docs/7.8.4/html/users_guide/syntax-extns.html#recursive-do-notation">
|
|
Ref</a></td>
|
|
<td><a href="#recursive-do">Recursive Do</a></td>
|
|
</tr>
|
|
<tr>
|
|
<td>EmptyCase</td>
|
|
<td>✓</td>
|
|
<td></td>
|
|
<td></td>
|
|
<td>Specialized</td>
|
|
<td>Syntax Extension</td>
|
|
<td><a href=
|
|
"http://www.haskell.org/ghc/docs/7.8.4/html/users_guide/syntax-extns.html#empty-case">
|
|
Ref</a></td>
|
|
<td><a href="#emptycase">EmptyCase</a></td>
|
|
</tr>
|
|
<tr>
|
|
<td>EmptyDataDecls</td>
|
|
<td>✓</td>
|
|
<td></td>
|
|
<td></td>
|
|
<td>General</td>
|
|
<td>Syntax Extension</td>
|
|
<td><a href=
|
|
"http://www.haskell.org/ghc/docs/7.8.4/html/users_guide/data-type-extensions.html#nullary-types">
|
|
Ref</a></td>
|
|
<td><a href="#void">Void</a></td>
|
|
</tr>
|
|
<tr>
|
|
<td>ExistentialQuantification</td>
|
|
<td>✓</td>
|
|
<td></td>
|
|
<td></td>
|
|
<td>Specialized</td>
|
|
<td>Typelevel Programming</td>
|
|
<td><a href=
|
|
"http://www.haskell.org/ghc/docs/7.8.4/html/users_guide/data-type-extensions.html#existential-quantification">
|
|
Ref</a></td>
|
|
<td><a href="#existential-quantification">Existential Quantification</a></td>
|
|
</tr>
|
|
<tr>
|
|
<td>ExplicitForAll</td>
|
|
<td></td>
|
|
<td></td>
|
|
<td></td>
|
|
<td>Specialized</td>
|
|
<td>Typelevel Programming</td>
|
|
<td><a href=
|
|
"http://www.haskell.org/ghc/docs/7.8.4/html/users_guide/other-type-extensions.html#explicit-foralls">
|
|
Ref</a></td>
|
|
<td><a href="#universal-quantification">Universal Quantification</a></td>
|
|
</tr>
|
|
<tr>
|
|
<td>ExplicitNamespaces</td>
|
|
<td>✓</td>
|
|
<td></td>
|
|
<td>✓</td>
|
|
<td>Specialized</td>
|
|
<td>Syntax Disambiguation</td>
|
|
<td><a href=
|
|
"http://www.haskell.org/ghc/docs/7.8.4/html/users_guide/syntax-extns.html#explicit-namespaces">
|
|
Ref</a></td>
|
|
</tr>
|
|
<tr>
|
|
<td>ExtendedDefaultRules</td>
|
|
<td></td>
|
|
<td></td>
|
|
<td></td>
|
|
<td>Specialized</td>
|
|
<td>Type Disambiguation</td>
|
|
<td><a href=
|
|
"http://www.haskell.org/ghc/docs/7.8.4/html/users_guide/interactive-evaluation.html#extended-default-rules">
|
|
Ref</a></td>
|
|
</tr>
|
|
<tr>
|
|
<td>FlexibleContexts</td>
|
|
<td>✓</td>
|
|
<td></td>
|
|
<td></td>
|
|
<td>General</td>
|
|
<td>Typeclass Extension</td>
|
|
<td><a href=
|
|
"http://www.haskell.org/ghc/docs/7.8.4/html/users_guide/other-type-extensions.html#flexible-contexts">
|
|
Ref</a></td>
|
|
<td><a href="#flexiblecontexts">Flexible Contexts</a></td>
|
|
</tr>
|
|
<tr>
|
|
<td>FlexibleInstances</td>
|
|
<td>✓</td>
|
|
<td></td>
|
|
<td></td>
|
|
<td>General</td>
|
|
<td>Typeclass Extension</td>
|
|
<td><a href=
|
|
"http://www.haskell.org/ghc/docs/7.8.4/html/users_guide/type-class-extensions.html#instance-rules">
|
|
Ref</a></td>
|
|
<td><a href="#flexibleinstances">Flexible Instances</a></td>
|
|
</tr>
|
|
<tr>
|
|
<td>ForeignFunctionInterface</td>
|
|
<td></td>
|
|
<td></td>
|
|
<td>✓</td>
|
|
<td>General</td>
|
|
<td>FFI</td>
|
|
<td><a href=
|
|
"http://www.haskell.org/ghc/docs/7.8.4/html/users_guide/ffi.html">Ref</a></td>
|
|
<td><a href="#ffi">FFI</a></td>
|
|
</tr>
|
|
<tr>
|
|
<td>FunctionalDependencies</td>
|
|
<td>✓</td>
|
|
<td></td>
|
|
<td></td>
|
|
<td>General</td>
|
|
<td>Typeclass Extension</td>
|
|
<td><a href=
|
|
"http://www.haskell.org/ghc/docs/7.8.4/html/users_guide/type-class-extensions.html#functional-dependencies">
|
|
Ref</a></td>
|
|
<td><a href="#multiparam-typeclasses">Multiparam Typeclasses</a></td>
|
|
</tr>
|
|
<tr>
|
|
<td>GADTs</td>
|
|
<td>✓</td>
|
|
<td></td>
|
|
<td></td>
|
|
<td>General</td>
|
|
<td>Typelevel Programming</td>
|
|
<td><a href=
|
|
"http://www.haskell.org/ghc/docs/7.8.4/html/users_guide/data-type-extensions.html#gadt">
|
|
Ref</a></td>
|
|
<td><a href="#gadts">GADTs</a></td>
|
|
</tr>
|
|
<tr>
|
|
<td>GADTSyntax</td>
|
|
<td>✓</td>
|
|
<td></td>
|
|
<td></td>
|
|
<td>General</td>
|
|
<td>Syntax Extension</td>
|
|
<td><a href=
|
|
"http://www.haskell.org/ghc/docs/7.8.4/html/users_guide/data-type-extensions.html#gadt-style">
|
|
Ref</a></td>
|
|
<td><a href="#gadts">GADTs</a></td>
|
|
</tr>
|
|
<tr>
|
|
<td>GeneralizedNewtypeDeriving</td>
|
|
<td>✓</td>
|
|
<td></td>
|
|
<td></td>
|
|
<td>General</td>
|
|
<td>Typeclass Extension</td>
|
|
<td><a href=
|
|
"http://www.haskell.org/ghc/docs/7.8.4/html/users_guide/deriving.html#newtype-deriving">
|
|
Ref</a></td>
|
|
<td><a href="#newtype-deriving">Newtype Deriving</a></td>
|
|
</tr>
|
|
<tr>
|
|
<td>GHCForeignImportPrim</td>
|
|
<td></td>
|
|
<td></td>
|
|
<td></td>
|
|
<td>Specialized</td>
|
|
<td>FFI</td>
|
|
<td><a href=
|
|
"http://www.haskell.org/ghc/docs/7.8.4/html/users_guide/ffi.html#ffi-prim">Ref</a></td>
|
|
<td><a href="#cmm">Cmm</a></td>
|
|
</tr>
|
|
<tr>
|
|
<td>ImplicitParams</td>
|
|
<td>✓</td>
|
|
<td></td>
|
|
<td></td>
|
|
<td>Specialized</td>
|
|
<td>Typelevel Programming</td>
|
|
<td><a href=
|
|
"http://www.haskell.org/ghc/docs/7.8.4/html/users_guide/other-type-extensions.html#implicit-parameters">
|
|
Ref</a></td>
|
|
</tr>
|
|
<tr>
|
|
<td>ImpredicativeTypes</td>
|
|
<td></td>
|
|
<td>✓</td>
|
|
<td></td>
|
|
<td>Specialized</td>
|
|
<td>Typelevel Programming</td>
|
|
<td><a href=
|
|
"http://www.haskell.org/ghc/docs/7.8.4/html/users_guide/other-type-extensions.html#impredicative-polymorphism">
|
|
Ref</a></td>
|
|
<td><a href="#impredicative-types">Impredicative Types</a></td>
|
|
</tr>
|
|
<tr>
|
|
<td>IncoherentInstances</td>
|
|
<td></td>
|
|
<td></td>
|
|
<td></td>
|
|
<td>Specialized</td>
|
|
<td>Typelevel Programming</td>
|
|
<td><a href=
|
|
"http://www.haskell.org/ghc/docs/7.8.4/html/users_guide/type-class-extensions.html#instance-overlap">
|
|
Ref</a></td>
|
|
<td><a href="#incoherentinstances">Incoherent Instances</a></td>
|
|
</tr>
|
|
<tr>
|
|
<td>InstanceSigs</td>
|
|
<td>✓</td>
|
|
<td></td>
|
|
<td></td>
|
|
<td>Specialized</td>
|
|
<td>Typelevel Programming</td>
|
|
<td><a href=
|
|
"http://www.haskell.org/ghc/docs/7.8.4/html/users_guide/type-class-extensions.html#instance-sigs">
|
|
Ref</a></td>
|
|
</tr>
|
|
<tr>
|
|
<td>InterruptibleFFI</td>
|
|
<td></td>
|
|
<td></td>
|
|
<td></td>
|
|
<td>Specialized</td>
|
|
<td>FFI</td>
|
|
<td><a href=
|
|
"http://www.haskell.org/ghc/docs/7.8.4/html/users_guide/ffi.html#ffi-interruptible">
|
|
Ref</a></td>
|
|
<td><a href="#ffi">FFI</td>
|
|
</tr>
|
|
<tr>
|
|
<td>KindSignatures</td>
|
|
<td>✓</td>
|
|
<td></td>
|
|
<td></td>
|
|
<td>Specialized</td>
|
|
<td>Typelevel Programming</td>
|
|
<td><a href=
|
|
"http://www.haskell.org/ghc/docs/7.8.4/html/users_guide/other-type-extensions.html#kinding">
|
|
Ref</a></td>
|
|
<td><a href="#kind-signatures">Kind Signatures</td>
|
|
</tr>
|
|
<tr>
|
|
<td>LambdaCase</td>
|
|
<td>✓</td>
|
|
<td></td>
|
|
<td></td>
|
|
<td>General</td>
|
|
<td>Syntax Extension</td>
|
|
<td><a href=
|
|
"http://www.haskell.org/ghc/docs/7.8.4/html/users_guide/syntax-extns.html#lambda-case">
|
|
Ref</a></td>
|
|
<td><a href="#lambdacase">Lambda Case</a></td>
|
|
</tr>
|
|
<tr>
|
|
<td>LiberalTypeSynonyms</td>
|
|
<td>✓</td>
|
|
<td></td>
|
|
<td></td>
|
|
<td>Specialized</td>
|
|
<td>Typeclass Extension</td>
|
|
<td><a href=
|
|
"http://www.haskell.org/ghc/docs/7.8.4/html/users_guide/data-type-extensions.html#type-synonyms">
|
|
Ref</a></td>
|
|
</tr>
|
|
<tr>
|
|
<td>MagicHash</td>
|
|
<td>✓</td>
|
|
<td></td>
|
|
<td></td>
|
|
<td>Specialized</td>
|
|
<td>GHC Internals</td>
|
|
<td><a href=
|
|
"http://www.haskell.org/ghc/docs/7.8.4/html/users_guide/syntax-extns.html#magic-hash">
|
|
Ref</a></td>
|
|
<td><a href="#unboxed-types">Unboxed Types</a></td>
|
|
</tr>
|
|
<tr>
|
|
<td>MonadComprehensions</td>
|
|
<td></td>
|
|
<td></td>
|
|
<td>✓</td>
|
|
<td>Specialized</td>
|
|
<td>Syntax Extension</td>
|
|
<td><a href=
|
|
"http://www.haskell.org/ghc/docs/7.8.4/html/users_guide/syntax-extns.html#monad-comprehensions">
|
|
Ref</a></td>
|
|
</tr>
|
|
<tr>
|
|
<td>MonoLocalBinds</td>
|
|
<td></td>
|
|
<td></td>
|
|
<td></td>
|
|
<td>General</td>
|
|
<td>Type Disambiguation</td>
|
|
<td><a href=
|
|
"http://www.haskell.org/ghc/docs/7.8.4/html/users_guide/other-type-extensions.html#mono-local-binds">
|
|
Ref</a></td>
|
|
</tr>
|
|
<tr>
|
|
<td>MonoPatBinds</td>
|
|
<td></td>
|
|
<td></td>
|
|
<td></td>
|
|
<td>Specialized</td>
|
|
<td>Type Disambiguation</td>
|
|
<td><a href=
|
|
"http://www.haskell.org/ghc/docs/7.6.3/html/users_guide/monomorphism.html">Ref</a></td>
|
|
</tr>
|
|
<tr>
|
|
<td>MultiParamTypeClasses</td>
|
|
<td>✓</td>
|
|
<td></td>
|
|
<td></td>
|
|
<td>General</td>
|
|
<td>Typeclass Extension</td>
|
|
<td><a href=
|
|
"http://www.haskell.org/ghc/docs/7.8.4/html/users_guide/type-class-extensions.html#multi-param-type-classes">
|
|
Ref</a></td>
|
|
<td><a href="#multiparam-typeclasses">Multiparam Typeclasses</a></td>
|
|
</tr>
|
|
<tr>
|
|
<td>MultiWayIf</td>
|
|
<td>✓</td>
|
|
<td></td>
|
|
<td></td>
|
|
<td>Specialized</td>
|
|
<td>Syntax Extension</td>
|
|
<td><a href=
|
|
"http://www.haskell.org/ghc/docs/7.8.4/html/users_guide/syntax-extns.html#multi-way-if">
|
|
Ref</a></td>
|
|
<td><a href="#multiwayif">MultiWawyIf</a></td>
|
|
</tr>
|
|
<tr>
|
|
<td>NamedFieldPuns</td>
|
|
<td>✓</td>
|
|
<td></td>
|
|
<td></td>
|
|
<td>Specialized</td>
|
|
<td>Syntax Extension</td>
|
|
<td><a href=
|
|
"http://www.haskell.org/ghc/docs/7.8.4/html/users_guide/syntax-extns.html#record-puns">
|
|
Ref</a></td>
|
|
<td><a href="#namedfieldpuns">Named Field Puns</a></td>
|
|
</tr>
|
|
<tr>
|
|
<td>NegativeLiterals</td>
|
|
<td></td>
|
|
<td></td>
|
|
<td></td>
|
|
<td>General</td>
|
|
<td>Type Disambiguation</td>
|
|
<td><a href=
|
|
"http://www.haskell.org/ghc/docs/7.8.4/html/users_guide/syntax-extns.html#negative-literals">
|
|
Ref</a></td>
|
|
</tr>
|
|
<tr>
|
|
<td>NoImplicitPrelude</td>
|
|
<td></td>
|
|
<td></td>
|
|
<td></td>
|
|
<td>Specialized</td>
|
|
<td>Import Disambiguation</td>
|
|
<td><a href=
|
|
"http://www.haskell.org/ghc/docs/7.8.4/html/users_guide/syntax-extns.html#rebindable-syntax">
|
|
Ref</a></td>
|
|
<td><a href="#custom-prelude">Custom Prelude</a></td>
|
|
</tr>
|
|
<tr>
|
|
<td>NoMonomorphismRestriction</td>
|
|
<td></td>
|
|
<td></td>
|
|
<td></td>
|
|
<td>General</td>
|
|
<td>Type Disambiguation</td>
|
|
<td><a href=
|
|
"http://www.haskell.org/ghc/docs/7.8.4/html/users_guide/other-type-extensions.html#monomorphism">
|
|
Ref</a></td>
|
|
<td><a href="#monomorphism-restriction">Monomorphism Restriction</a></td>
|
|
</tr>
|
|
<tr>
|
|
<td>NPlusKPatterns</td>
|
|
<td></td>
|
|
<td>✓</td>
|
|
<td>✓</td>
|
|
<td>Deprecated</td>
|
|
<td>Deprecated</td>
|
|
<td><a href=
|
|
"http://www.haskell.org/ghc/docs/7.8.4/html/users_guide/syntax-extns.html#n-k-patterns">
|
|
Ref</a></td>
|
|
</tr>
|
|
<tr>
|
|
<td>NullaryTypeClasses</td>
|
|
<td></td>
|
|
<td></td>
|
|
<td></td>
|
|
<td>Specialized</td>
|
|
<td>Typeclass Extension</td>
|
|
<td><a href=
|
|
"http://www.haskell.org/ghc/docs/7.8.4/html/users_guide/type-class-extensions.html#nullary-type-classes">
|
|
Ref</a></td>
|
|
<td><a href="#multiparam-typeclasses">Multiparam Typeclasses</a></td>
|
|
</tr>
|
|
<tr>
|
|
<td>NumDecimals</td>
|
|
<td></td>
|
|
<td></td>
|
|
<td></td>
|
|
<td>General</td>
|
|
<td>Type Disambiguation</td>
|
|
<td><a href=
|
|
"http://www.haskell.org/ghc/docs/7.8.4/html/users_guide/syntax-extns.html#num-decimals">
|
|
Ref</a></td>
|
|
<td><a href="#numdecimals">NumDecimals</a></td>
|
|
</tr>
|
|
<tr>
|
|
<td>OverlappingInstances</td>
|
|
<td></td>
|
|
<td></td>
|
|
<td></td>
|
|
<td>Specialized</td>
|
|
<td>Typeclass Extension</td>
|
|
<td><a href=
|
|
"http://www.haskell.org/ghc/docs/7.8.4/html/users_guide/type-class-extensions.html#instance-overlap">
|
|
Ref</a></td>
|
|
<td><a href="#overlappinginstances">Overlapping Instances</a></td>
|
|
</tr>
|
|
<tr>
|
|
<td>OverloadedLabels</td>
|
|
<td></td>
|
|
<td></td>
|
|
<td>✓</td>
|
|
<td>General</td>
|
|
<td>Type Disambiguation</td>
|
|
<td><a href= "">
|
|
Ref</a></td>
|
|
<td><a href="#overloadedlabels">Overloaded Labels</a></td>
|
|
</tr>
|
|
<tr>
|
|
<td>OverloadedRecordFields</td>
|
|
<td></td>
|
|
<td></td>
|
|
<td>✓</td>
|
|
<td>General</td>
|
|
<td>Syntax Extension</td>
|
|
<td><a href= "">
|
|
Ref</a></td>
|
|
<td><a href="#overloadedlabels">Overloaded Labels</a></td>
|
|
</tr>
|
|
<tr>
|
|
<td>OverloadedLists</td>
|
|
<td></td>
|
|
<td></td>
|
|
<td></td>
|
|
<td>General</td>
|
|
<td>Syntax Extension</td>
|
|
<td><a href=
|
|
"http://www.haskell.org/ghc/docs/7.8.4/html/users_guide/type-class-extensions.html#overloaded-lists">
|
|
Ref</a></td>
|
|
<td><a href="#overloaded-lists">Overloaded Lists</a></td>
|
|
</tr>
|
|
<tr>
|
|
<td>OverloadedStrings</td>
|
|
<td></td>
|
|
<td></td>
|
|
<td></td>
|
|
<td>General</td>
|
|
<td>Syntax Extension</td>
|
|
<td><a href=
|
|
"http://www.haskell.org/ghc/docs/7.8.4/html/users_guide/type-class-extensions.html#overloaded-strings">
|
|
Ref</a></td>
|
|
<td><a href="#string">Overloaded Strings</a></td>
|
|
</tr>
|
|
<tr>
|
|
<td>PackageImports</td>
|
|
<td></td>
|
|
<td></td>
|
|
<td>✓</td>
|
|
<td>General</td>
|
|
<td>Import Disambiguation</td>
|
|
<td><a href=
|
|
"http://www.haskell.org/ghc/docs/7.8.4/html/users_guide/syntax-extns.html#package-imports">
|
|
Ref</a></td>
|
|
<td><a href="#package-imports">Package Imports</a></td>
|
|
</tr>
|
|
<tr>
|
|
<td>ParallelArrays</td>
|
|
<td></td>
|
|
<td></td>
|
|
<td></td>
|
|
<td>Specialized</td>
|
|
<td>Data Parallel Haskell</td>
|
|
<td><a href=
|
|
"http://www.haskell.org/ghc/docs/7.8.4/html/users_guide/lang-parallel.html">
|
|
Ref</a></td>
|
|
</tr>
|
|
<tr>
|
|
<td>ParallelListComp</td>
|
|
<td>✓</td>
|
|
<td></td>
|
|
<td>✓</td>
|
|
<td>General</td>
|
|
<td>Syntax Extension</td>
|
|
<td><a href=
|
|
"http://www.haskell.org/ghc/docs/7.8.4/html/users_guide/syntax-extns.html#parallel-list-comprehensions">
|
|
Ref</a></td>
|
|
</tr>
|
|
<tr>
|
|
<td>PartialTypeSignatures</td>
|
|
<td>✓</td>
|
|
<td></td>
|
|
<td></td>
|
|
<td>General</td>
|
|
<td>Interactive Typing</td>
|
|
<td><a href=
|
|
"https://downloads.haskell.org/~ghc/7.10.1/docs/html/users_guide/partial-type-signatures.html">Ref
|
|
</a></td>
|
|
<td><a href="#partial-type-signatures">Partial Type Signatures</a></td>
|
|
</tr>
|
|
<tr>
|
|
<td>PatternGuards</td>
|
|
<td>✓</td>
|
|
<td></td>
|
|
<td>✓</td>
|
|
<td>General</td>
|
|
<td>Syntax Extension</td>
|
|
<td><a href=
|
|
"http://www.haskell.org/ghc/docs/7.8.4/html/users_guide/syntax-extns.html#pattern-guards">
|
|
Ref</a></td>
|
|
<td><a href="#pattern-guards">Pattern Guards</a></td>
|
|
</tr>
|
|
<tr>
|
|
<td>PatternSynonyms</td>
|
|
<td>✓</td>
|
|
<td></td>
|
|
<td>✓</td>
|
|
<td>General</td>
|
|
<td>Syntax Extension</td>
|
|
<td><a href=
|
|
"http://www.haskell.org/ghc/docs/7.8.4/html/users_guide/syntax-extns.html#pattern-synonyms">
|
|
Ref</a></td>
|
|
<td><a href="#patternsynonyms">Pattern Synonyms</a></td>
|
|
</tr>
|
|
<tr>
|
|
<td>PolyKinds</td>
|
|
<td></td>
|
|
<td></td>
|
|
<td></td>
|
|
<td>Specialized</td>
|
|
<td>Typelevel Programming</td>
|
|
<td><a href=
|
|
"http://www.haskell.org/ghc/docs/7.8.4/html/users_guide/kind-polymorphism.html">
|
|
Ref</a></td>
|
|
<td><a href="#kind-polymorphism">Kind Polymorphism</a></td>
|
|
</tr>
|
|
<tr>
|
|
<td>PolymorphicComponents</td>
|
|
<td></td>
|
|
<td>✓</td>
|
|
<td></td>
|
|
<td>Specialized</td>
|
|
<td>Deprecated</td>
|
|
<td><a href=
|
|
"http://www.haskell.org/ghc/docs/7.8.4/html/users_guide/other-type-extensions.html#universal-quantification">
|
|
Ref</a></td>
|
|
</tr>
|
|
<tr>
|
|
<td>PostfixOperators</td>
|
|
<td>✓</td>
|
|
<td></td>
|
|
<td>✓</td>
|
|
<td>Specialized</td>
|
|
<td>Syntax Extension</td>
|
|
<td><a href=
|
|
"http://www.haskell.org/ghc/docs/7.8.4/html/users_guide/syntax-extns.html#postfix-operators">
|
|
Ref</a></td>
|
|
</tr>
|
|
<tr>
|
|
<td>QuasiQuotes</td>
|
|
<td></td>
|
|
<td></td>
|
|
<td>✓</td>
|
|
<td>Specialized</td>
|
|
<td>Metaprogramming</td>
|
|
<td><a href=
|
|
"http://www.haskell.org/ghc/docs/7.8.4/html/users_guide/template-haskell.html#th-quasiquotation">
|
|
Ref</a></td>
|
|
<td><a href="#quasiquotation">QuasiQuotation</a></td>
|
|
</tr>
|
|
<tr>
|
|
<td>Rank2Types</td>
|
|
<td></td>
|
|
<td>✓</td>
|
|
<td></td>
|
|
<td>Specialized</td>
|
|
<td>Historical Artifact</td>
|
|
<td><a href=
|
|
"http://www.haskell.org/ghc/docs/7.8.4/html/users_guide/other-type-extensions.html#universal-quantification">
|
|
Ref</a></td>
|
|
<td><a href="#rank-n-types">Rank N Types</a></td>
|
|
</tr>
|
|
<tr>
|
|
<td>RankNTypes</td>
|
|
<td>✓</td>
|
|
<td></td>
|
|
<td></td>
|
|
<td>Specialized</td>
|
|
<td>Typelevel Programming</td>
|
|
<td><a href=
|
|
"http://www.haskell.org/ghc/docs/7.8.4/html/users_guide/other-type-extensions.html#universal-quantification">
|
|
Ref</a></td>
|
|
<td><a href="#rank-n-types">Rank N Types</a></td>
|
|
</tr>
|
|
<tr>
|
|
<td>RebindableSyntax</td>
|
|
<td></td>
|
|
<td></td>
|
|
<td>✓</td>
|
|
<td>Specialized</td>
|
|
<td>Metaprogramming</td>
|
|
<td><a href=
|
|
"http://www.haskell.org/ghc/docs/7.8.4/html/users_guide/syntax-extns.html#rebindable-syntax">
|
|
Ref</a></td>
|
|
<td><a href="#indexed-monads">Indexed Monads</a></td>
|
|
</tr>
|
|
<tr>
|
|
<td>RecordWildCards</td>
|
|
<td>✓</td>
|
|
<td></td>
|
|
<td>✓</td>
|
|
<td>General</td>
|
|
<td>Syntax Extension</td>
|
|
<td><a href=
|
|
"http://www.haskell.org/ghc/docs/7.8.4/html/users_guide/syntax-extns.html#record-wildcards">
|
|
Ref</a></td>
|
|
<td><a href="#recordwildcards">Record Wildcards</a></td>
|
|
</tr>
|
|
<tr>
|
|
<td>RecursiveDo</td>
|
|
<td>✓</td>
|
|
<td></td>
|
|
<td></td>
|
|
<td>Specialized</td>
|
|
<td>Syntax Extension</td>
|
|
<td><a href=
|
|
"http://www.haskell.org/ghc/docs/7.8.4/html/users_guide/syntax-extns.html#recursive-do-notation">
|
|
Ref</a></td>
|
|
<td><a href="#monadfix">MonadFix</a></td>
|
|
</tr>
|
|
<tr>
|
|
<td>RelaxedPolyRec</td>
|
|
<td></td>
|
|
<td></td>
|
|
<td></td>
|
|
<td>Specialized</td>
|
|
<td>Type Disambiguation</td>
|
|
<td><a href=
|
|
"http://www.haskell.org/ghc/docs/7.8.4/html/users_guide/other-type-extensions.html#typing-binds">
|
|
Ref</a></td>
|
|
</tr>
|
|
<tr>
|
|
<td>RoleAnnotations</td>
|
|
<td>✓</td>
|
|
<td></td>
|
|
<td></td>
|
|
<td>Specialized</td>
|
|
<td>Type Disambiguation</td>
|
|
<td><a href=
|
|
"http://www.haskell.org/ghc/docs/7.8.4/html/users_guide/roles.html">Ref</a></td>
|
|
<td><a href="#roles">Roles</a></td>
|
|
</tr>
|
|
<tr>
|
|
<td>Safe</td>
|
|
<td></td>
|
|
<td></td>
|
|
<td></td>
|
|
<td>Specialized</td>
|
|
<td>Security Auditing</td>
|
|
<td><a href=
|
|
"http://www.haskell.org/ghc/docs/7.8.4/html/users_guide/safe-haskell.html">Ref</a></td>
|
|
<td><a href="#safe-haskell">Safe Haskell</a></td>
|
|
</tr>
|
|
<tr>
|
|
<td>SafeImports</td>
|
|
<td></td>
|
|
<td></td>
|
|
<td></td>
|
|
<td>Specialized</td>
|
|
<td>Security Auditing</td>
|
|
<td><a href=
|
|
"http://www.haskell.org/ghc/docs/7.8.4/html/users_guide/safe-haskell.html">Ref</a></td>
|
|
<td><a href="#safe-haskell">Safe Haskell</a></td>
|
|
</tr>
|
|
<tr>
|
|
<td>ScopedTypeVariables</td>
|
|
<td>✓</td>
|
|
<td></td>
|
|
<td></td>
|
|
<td>Specialized</td>
|
|
<td>Typelevel Programming</td>
|
|
<td><a href=
|
|
"http://www.haskell.org/ghc/docs/7.8.4/html/users_guide/other-type-extensions.html#scoped-type-variables">
|
|
Ref</a></td>
|
|
<td><a href="#scoped-type-variables">Scoped Type Variables</a></td>
|
|
</tr>
|
|
<tr>
|
|
<td>StandaloneDeriving</td>
|
|
<td>✓</td>
|
|
<td></td>
|
|
<td>✓</td>
|
|
<td>General</td>
|
|
<td>Typeclass Extension</td>
|
|
<td><a href=
|
|
"http://www.haskell.org/ghc/docs/7.8.4/html/users_guide/deriving.html#stand-alone-deriving">
|
|
Ref</a></td>
|
|
</tr>
|
|
<tr>
|
|
<td>StaticPointers</td>
|
|
<td>✓</td>
|
|
<td></td>
|
|
<td>✓</td>
|
|
<td>General</td>
|
|
<td>Distributed Programming</td>
|
|
<td><a href=
|
|
"http://www.haskell.org/ghc/docs/7.8.4/html/users_guide/deriving.html#stand-alone-deriving">
|
|
Ref</a></td>
|
|
</tr>
|
|
<tr>
|
|
<td>Strict</td>
|
|
<td></td>
|
|
<td></td>
|
|
<td></td>
|
|
<td>General</td>
|
|
<td>Strictness Annotations</td>
|
|
<td><a href=
|
|
"https://downloads.haskell.org/~ghc/master/users-guide//glasgow_exts.html#ghc-flag--XStrict" >
|
|
Ref</a></td>
|
|
<td><a href="#strict-haskell">Strict Haskell</a></td>
|
|
</tr>
|
|
<tr>
|
|
<td>StrictData</td>
|
|
<td></td>
|
|
<td></td>
|
|
<td></td>
|
|
<td>General</td>
|
|
<td>Strictness Annotations</td>
|
|
<td><a href=
|
|
"https://downloads.haskell.org/~ghc/master/users-guide//glasgow_exts.html#ghc-flag--XStrict" >
|
|
Ref</a></td>
|
|
<td><a href="#strict-haskell">Strict Haskell</a></td>
|
|
</tr>
|
|
<tr>
|
|
<td>TemplateHaskell</td>
|
|
<td>✓</td>
|
|
<td></td>
|
|
<td>✓</td>
|
|
<td>Specialized</td>
|
|
<td>Metaprogramming</td>
|
|
<td><a href=
|
|
"http://www.haskell.org/ghc/docs/7.8.4/html/users_guide/template-haskell.html">
|
|
Ref</a></td>
|
|
<td><a href="#template-haskell">Template Haskell</a></td>
|
|
</tr>
|
|
<tr>
|
|
<td>TraditionalRecordSyntax</td>
|
|
<td></td>
|
|
<td>✓</td>
|
|
<td>✓</td>
|
|
<td>Specialized</td>
|
|
<td>Historical Artifact</td>
|
|
<td><a href=
|
|
"http://www.haskell.org/ghc/docs/7.8.4/html/users_guide/syntax-extns.html#traditional-record-syntax">
|
|
Ref</a></td>
|
|
<td><a href="#historical-extensions">Historical Extensions</a></td>
|
|
</tr>
|
|
<tr>
|
|
<td>TransformListComp</td>
|
|
<td></td>
|
|
<td></td>
|
|
<td>✓</td>
|
|
<td>Specialized</td>
|
|
<td>Syntax Extension</td>
|
|
<td><a href=
|
|
"http://www.haskell.org/ghc/docs/7.8.4/html/users_guide/syntax-extns.html#generalised-list-comprehensions">
|
|
Ref</a></td>
|
|
</tr>
|
|
<tr>
|
|
<td>Trustworthy</td>
|
|
<td></td>
|
|
<td></td>
|
|
<td></td>
|
|
<td>Specialized</td>
|
|
<td>Security Auditing</td>
|
|
<td><a href=
|
|
"http://www.haskell.org/ghc/docs/7.8.4/html/users_guide/safe-haskell.html">Ref</a></td>
|
|
<td><a href="#safe-haskell">Safe Haskell</a></td>
|
|
</tr>
|
|
<tr>
|
|
<td>TupleSections</td>
|
|
<td>✓</td>
|
|
<td></td>
|
|
<td></td>
|
|
<td>General</td>
|
|
<td>Syntax Extension</td>
|
|
<td><a href=
|
|
"http://www.haskell.org/ghc/docs/7.8.4/html/users_guide/syntax-extns.html#tuple-sections">
|
|
Ref</a></td>
|
|
<td><a href="#tuplesections">Tuple Sections</a></td>
|
|
</tr>
|
|
<tr>
|
|
<td>TypeApplications</td>
|
|
<td>✓</td>
|
|
<td></td>
|
|
<td>✓</td>
|
|
<td>Specialized</td>
|
|
<td>Typelevel Programming</td>
|
|
<td><a href=
|
|
"http://www.haskell.org/ghc/docs/7.8.4/html/users_guide/type-families.html">
|
|
Ref</a></td>
|
|
</tr>
|
|
<tr>
|
|
<td>TypeFamilies</td>
|
|
<td>✓</td>
|
|
<td></td>
|
|
<td></td>
|
|
<td>Specialized</td>
|
|
<td>Typelevel Programming</td>
|
|
<td><a href=
|
|
"http://www.haskell.org/ghc/docs/7.8.4/html/users_guide/type-families.html">
|
|
Ref</a></td>
|
|
<td><a href="#type-families">Type Families</a></td>
|
|
</tr>
|
|
<tr>
|
|
<td>TypeHoles</td>
|
|
<td>✓</td>
|
|
<td></td>
|
|
<td></td>
|
|
<td>General</td>
|
|
<td>Interactive Typing</td>
|
|
<td><a href=
|
|
"http://www.haskell.org/ghc/docs/7.8.4/html/users_guide/typed-holes.html">Ref</a></td>
|
|
<td><a href="#type-holes">Type Holes</a></td>
|
|
</tr>
|
|
<tr>
|
|
<td>TypeInType</td>
|
|
<td></td>
|
|
<td></td>
|
|
<td></td>
|
|
<td>Specialized</td>
|
|
<td>Typelevel Programming</td>
|
|
<td><a href="">Ref</a></td>
|
|
</tr>
|
|
<tr>
|
|
<td>TypeOperators</td>
|
|
<td>✓</td>
|
|
<td></td>
|
|
<td></td>
|
|
<td>Specialized</td>
|
|
<td>Typelevel Programming</td>
|
|
<td><a href=
|
|
"http://www.haskell.org/ghc/docs/7.8.4/html/users_guide/data-type-extensions.html#type-operators">
|
|
Ref</a></td>
|
|
<td><a href="#manual-proofs">Manual Proofs</a></td>
|
|
</tr>
|
|
<tr>
|
|
<td>TypeSynonymInstances</td>
|
|
<td>✓</td>
|
|
<td></td>
|
|
<td></td>
|
|
<td>General</td>
|
|
<td>Typeclass Extension</td>
|
|
<td><a href=
|
|
"http://www.haskell.org/ghc/docs/7.8.4/html/users_guide/type-class-extensions.html#flexible-instance-head">
|
|
Ref</a></td>
|
|
<td><a href="#typesynonyminstances">Type Synonym Instances</a></td>
|
|
</tr>
|
|
<tr>
|
|
<td>UnboxedTuples</td>
|
|
<td>✓</td>
|
|
<td></td>
|
|
<td>✓</td>
|
|
<td>Specialized</td>
|
|
<td>FFI</td>
|
|
<td><a href=
|
|
"http://www.haskell.org/ghc/docs/7.8.4/html/users_guide/primitives.html#unboxed-tuples">
|
|
Ref</a></td>
|
|
</tr>
|
|
<tr>
|
|
<td>UndecidableInstances</td>
|
|
<td></td>
|
|
<td></td>
|
|
<td></td>
|
|
<td>Specialized</td>
|
|
<td>Typelevel Programming</td>
|
|
<td><a href=
|
|
"http://www.haskell.org/ghc/docs/7.8.4/html/users_guide/type-class-extensions.html#undecidable-instances">
|
|
Ref</a></td>
|
|
<td><a href="#multiparam-typeclasses">Multiparam Typeclasses</a></td>
|
|
</tr>
|
|
<tr>
|
|
<td>UnicodeSyntax</td>
|
|
<td></td>
|
|
<td></td>
|
|
<td>✓</td>
|
|
<td>Specialized</td>
|
|
<td>Syntax Extension</td>
|
|
<td><a href=
|
|
"http://www.haskell.org/ghc/docs/7.8.4/html/users_guide/syntax-extns.html#unicode-syntax">
|
|
Ref</a></td>
|
|
</tr>
|
|
<tr>
|
|
<td>UnliftedFFITypes</td>
|
|
<td></td>
|
|
<td></td>
|
|
<td></td>
|
|
<td>Specialized</td>
|
|
<td>FFI</td>
|
|
<td><a href=
|
|
"http://www.haskell.org/ghc/docs/7.8.4/html/users_guide/primitives.html">Ref</a></td>
|
|
<td><a href="#cmm">Cmm</a></td>
|
|
</tr>
|
|
<tr>
|
|
<td>Unsafe</td>
|
|
<td></td>
|
|
<td></td>
|
|
<td></td>
|
|
<td>Specialized</td>
|
|
<td>Security Auditing</td>
|
|
<td><a href=
|
|
"http://www.haskell.org/ghc/docs/7.8.4/html/users_guide/safe-haskell.html">Ref</a></td>
|
|
<td><a href="#safe-haskell">Safe Haskell</a></td>
|
|
</tr>
|
|
<tr>
|
|
<td>ViewPatterns</td>
|
|
<td>✓</td>
|
|
<td></td>
|
|
<td>✓</td>
|
|
<td>General</td>
|
|
<td>Syntax Extension</td>
|
|
<td><a href=
|
|
"http://www.haskell.org/ghc/docs/7.8.4/html/users_guide/syntax-extns.html#view-patterns">
|
|
Ref</a></td>
|
|
<td><a href="#viewpatterns">View Patterns</a></td>
|
|
</tr>
|
|
</table>
|