HList: Heterogeneous lists
HList provides many operations to create and manipulate heterogenous lists (HLists) whose length and element types are known at compile-time. HLists are used to implement
records
variants
type-indexed products (TIP)
type-indexed co-products (TIC)
keyword arguments
User code should import Data.HList or Data.HList.CommonMain for a slightly more limited scope
The original design is described in http://okmij.org/ftp/Haskell/HList-ext.pdf,
though since that paper came out, the -XTypeFamiles extension has been used to
replace TypeCast
with ~
.
[Skip to Readme]
Modules
[Index] [Quick Jump]
- Data
- Data.HList
- Data.HList.CommonMain
- Data.HList.Data
- Data.HList.Dredge
- Data.HList.FakePrelude
- Data.HList.HArray
- Data.HList.HCurry
- Data.HList.HList
- Data.HList.HListPrelude
- Data.HList.HOccurs
- Data.HList.HSort
- Data.HList.HTypeIndexed
- Data.HList.HZip
- Data.HList.Keyword
- Data.HList.Label3
- Data.HList.Label5
- Data.HList.Label6
- Data.HList.Labelable
- Data.HList.MakeLabels
- Data.HList.Record
- Data.HList.RecordPuns
- Data.HList.RecordU
- Data.HList.TIC
- Data.HList.TIP
- Data.HList.TIPtuple
- Data.HList.TypeEqO
- Data.HList.Variant
- Data.HList
Flags
Manual Flags
Name | Description | Default |
---|---|---|
new_type_eq | use Data.Type.Equality.== to define the instance of HEq instead of overlapping instances (in Data.HList.TypeEqO) (needs ghc >= 7.8) This version does not allow `HEq x [x] f` to lead to f ~ False, unlike the version with overlapping instances. See https://ghc.haskell.org/trac/ghc/ticket/9918 | Disabled |
Use -f <flag> to enable a flag, or -f -<flag> to disable that flag. More info
Downloads
- HList-0.5.3.0.tar.gz [browse] (Cabal source package)
- Package description (as included in the package)
Maintainer's Corner
For package maintainers and hackage trustees
Candidates
Versions [RSS] | 0.1, 0.1.1, 0.2, 0.2.1, 0.2.2, 0.2.3, 0.3.0, 0.3.0.1, 0.3.1.0, 0.3.2.0, 0.3.4.0, 0.3.4.1, 0.4.0.0, 0.4.1.0, 0.4.2.0, 0.5.0.0, 0.5.1.0, 0.5.2.0, 0.5.3.0 |
---|---|
Change log | ChangeLog |
Dependencies | array, base (>=4.6 && <5), base-orphans, ghc-prim, mtl, profunctors, semigroups, tagged, template-haskell [details] |
Tested with | ghc ==9.6.1 |
License | MIT |
Author | 2004 Oleg Kiselyov (FNMOC, Monterey), Ralf Laemmel (CWI/VU, Amsterdam), Keean Schupke (London) |
Maintainer | oleg@pobox.com |
Category | Data |
Source repo | head: git clone https://bitbucket.org/HList/hlist |
Uploaded | by AdamVogt at 2023-09-23T21:29:44Z |
Distributions | |
Reverse Dependencies | 25 direct, 31 indirect [details] |
Downloads | 20592 total (108 in the last 30 days) |
Rating | 2.0 (votes: 1) [estimated by Bayesian average] |
Your Rating | |
Status | Docs available [build log] Last success reported on 2023-09-23 [all 1 reports] |