Difference between revisions of "GHC/Type system"

From HaskellWiki
< GHC
Jump to navigation Jump to search
(fix link to OverlappingInstances)
 
(5 intermediate revisions by 3 users not shown)
Line 2: Line 2:
 
<span style='font-size: x-large; font-weight: bold'>Type system extensions in GHC</span>
 
<span style='font-size: x-large; font-weight: bold'>Type system extensions in GHC</span>
   
GHC comes with a rather large collection of type-system extensions (beyond Haskell 98). They are all documented in the [http://www.haskell.org/ghc/docs/latest/html/users_guide/ghc-language-features.html user manual], but this page is a place to record user-oriented observations, notes, and suggestions on how to use them.
+
GHC comes with a rather large collection of type-system extensions (beyond Haskell 98). {{GHCUsersGuide|exts||a section on Language Extensions}} But this page is a place to record user-oriented observations, notes, and suggestions on how to use them.
   
 
* '''[[GHC/Indexed_types|Indexed data types]]'''
 
* '''[[GHC/Indexed_types|Indexed data types]]'''
Line 8: Line 8:
 
* '''[[GHC/Stand-alone deriving declarations|"Stand-alone deriving" declarations]]'''
 
* '''[[GHC/Stand-alone deriving declarations|"Stand-alone deriving" declarations]]'''
 
* '''[[GHC/TypeSigsAndAmbiguity|Type signatures and ambiguity]]'''
 
* '''[[GHC/TypeSigsAndAmbiguity|Type signatures and ambiguity]]'''
* '''Overlapping instances'''. GHC supports overlapping instances, with carefully specified rules. Make sure you read the [http://www.haskell.org/ghc/docs/latest/html/users_guide/type-class-extensions.html#instance-decls relevant sections of the user manual]. Here is an appliation note about [[GHC/AdvancedOverlap|advanced use of overlapping instances]], combined with functional dependencies.
+
* '''Overlapping instances'''. GHC supports overlapping instances, with carefully specified rules. Make sure you read the [http://downloads.haskell.org/~ghc/latest/docs/html/users_guide/exts/instances.html#overlapping-instances relevant sections of the user manual]. Here is an application note about [[GHC/AdvancedOverlap|advanced use of overlapping instances]], combined with functional dependencies.
  +
* '''[[GHC/SuperClass|Super-Class Constraints: Type Families, Type Equalities, FunDep, Overlaps]]'''
  +
* '''[[GHC/Coercible|Safe coercions using Coercible]]'''

Latest revision as of 20:32, 23 July 2021

Type system extensions in GHC

GHC comes with a rather large collection of type-system extensions (beyond Haskell 98). The GHC Users Guide has a section on Language Extensions. But this page is a place to record user-oriented observations, notes, and suggestions on how to use them.