Personal tools

GHC/Type system

From HaskellWiki

< GHC(Difference between revisions)
Jump to: navigation, search
 
(2 intermediate revisions by one user not shown)
Line 4: Line 4:
 
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). 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/Indexed_types|Indexed data types]]
+
* '''[[GHC/Indexed_types|Indexed data types]]'''
* [[GHC/TypeHoles|Agda-like "holes" in GHC]]
+
* '''[[GHC/TypeHoles|Agda-like "holes" in GHC]]'''
* '''[[GHC/Stand-alone deriving declarations|"stand-alone deriving" declarations]]'''
+
* '''[[GHC/Stand-alone deriving declarations|"Stand-alone deriving" declarations]]'''
* [[GHC/TypeSigsAndAmbituity|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://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.
  +
* '''[[GHC/Coercible|Safe coercions using Coercible]]'''

Latest revision as of 08:57, 20 May 2014

Type system extensions in GHC

GHC comes with a rather large collection of type-system extensions (beyond Haskell 98). They are all documented in the user manual, but this page is a place to record user-oriented observations, notes, and suggestions on how to use them.