wiki:HaskellExtensions

Version 42 (modified by malcolm.wallace@…, 8 years ago) (diff)

--

Known Haskell Extensions

Support Matrix

Extension Name GHC NHC HUGS JHC Tickets
AssociatedTypes False False False False #14, #90
ClassAliases? False False False False No results
CoinductiveDictionaries? ? False False False No results
ContextStack? True False False False No results
DataKinds? False False False False No results
DoAndIfThenElse False False False False #23
DottedHierarchicalModules False False False True No results
EmptyDataDecls True True True True #25
ExistentialQuantification True True True False #26
ExplicitDictionaries? False False False False No results
ExtensibleRecords? False False True False No results
FlexibleContexts True False True ? #31
FlexibleInstances True False True ? #32
ForeignData False False False True #34
ForeignFunctionInterface True True True True #35
FunctionalDependencies True False True False #36, #90
HereDocuments? False False True False No results
HierarchicalModules True True True True #24
ImplicitParams True False True False #38
IncoherentInstances True False True False #40, #54
InfixTypeConstructors True False False True #78
InlinePhase? True False False False No results
KindAnnotations True False False True #84
KindPolymorphism? False False False False No results
LambdaCase False False False False #41
LiberalTypeSynonyms True False False True #102
LinearImplicitParams True False False False #43
MagicUnderscore False False False True #44
MultiParamTypeClasses True False True False #49, #90
MultiWayIf False False False False #41, #77
NamedFieldPuns? False True False False #136
NewtypeDeriving True False False True #22, #52
NoImplicitPrelude? True False False True #144
NoMonomorphismRestriction True True False True #131 #80, #131
NondecreasingIndentation True ? True ? #53
OverlappingInstances True False True False #54
ParallelListComp True False True False #55
PartialTypeSigs False False False False #40
PatternGuards True False False False #56
PolymorphicComponents True False True False #57
RebindableSyntax? True False False Some No results
RecursiveDo True False True False #64
RecursiveModules? Partial Partial False True No results
RestrictedTypeSynonyms? False False True False No results
RewriteRules? True False False Int No results
ScopedTypeVariables True False True False #67, #81
TemplateHaskell? True False False False No results
TypeSynonymInstances True False True True #70
UnboxedTypes? True False False Int No results
UndecidableInstances True False False False #71
Views False False False False #73, #114
Arrows True False False False #13
Assertions? True ? False True #107
Concurrency True False Coop Poor #74
CPP? True True True True No results
GADTs True False False False #37
Generics? True False False False #88
Impredicativity? ? False False False #87
Rank2Types True False True False #60
RankNTypes True False False False #60
AllowImportAnywhere False False False False #82

Extensions supported by two compilers

Extensions used in fptools

Those mentioned in library .cabal files
CPP 11 libraries
ForeignFunctionInterface 4
MultiParamTypeClasses 3
OverlappingInstances 1
FunctionalDependencies 1
Additional extensions mentioned in source file "Portability" field
Concurrency 3 libraries
Local universal quantification 3
Extended exceptions >1
Existentially quantified data constructors 1
STM 1