heterogeneous-list-literals: Allows the use of tuples as literals for Heterogeneous collections

[ bsd3, data, library ] [ Propose Tags ]

This is an incredibly simple library, which makes writing literals for heterogeneous collections easy

If you write a function with the signature

hList :: HLL input output => input -> HList output


a :: HList '[]
a = hList ()

b :: HList '[Bool]
b = hList (OneTuple True)

c :: HList '[Bool, Int, Double, String]
c = hList (True, 24, 10.5, "Fire")

The full code is in test/Docs.hs

This only supports literals of length up to 20, though that can be easily extended using the code generator in src/Data/HeterogeneousListLiterals


Maintainer's Corner

Package maintainers

For package maintainers and hackage trustees


Versions [RSS],
Change log ChangeLog.md
Dependencies base (>=4.9 && <=4.11), OneTuple (>=0.2.1) [details]
License BSD-3-Clause
Author David Millar-Durrant
Maintainer dmillardurrant@gmail.com
Category Data
Home page https://github.com/davidm-d/heterogeneous-list-literals
Source repo head: git clone https://github.com/davidm-d/heterogeneous-list-literals
Uploaded by DavidMD at 2018-03-23T01:31:13Z
Distributions NixOS:
Reverse Dependencies 1 direct, 0 indirect [details]
Downloads 1259 total (9 in the last 30 days)
Rating (no votes yet) [estimated by Bayesian average]
Your Rating
  • λ
  • λ
  • λ
Status Docs available [build log]
Last success reported on 2018-03-23 [all 1 reports]