parameterized-utils-2.1.7.0: Classes and data structures for working with data-kind indexed types
This package contains collection classes and type representations used for working with values that have a single parameter. It's intended for things like expression libraries where one wishes to leverage the Haskell type-checker to improve type-safety by encoding the object language type system into data kinds.
Modules
parameterized-utils-2.1.7.0
- Data
- Data.Parameterized
- Data.Parameterized.All Universal quantification, in a datatype
- Data.Parameterized.Axiom
- Data.Parameterized.BoolRepr
- Data.Parameterized.Classes Classes for working with type of kind
k -> *
- Data.Parameterized.ClassesC Classes for working with type of kind
(k -> *) -> *
- Data.Parameterized.Compose utilities for working with Data.Functor.Compose
- Data.Parameterized.Context
- Data.Parameterized.Ctx Type-level lists.
- Data.Parameterized.Ctx.Proofs type-level proofs involving contexts
- Data.Parameterized.DataKind
- Data.Parameterized.DecidableEq Decideable equality (i.e. evidence of non-equality) on type families
- Data.Parameterized.Fin
- Data.Parameterized.FinMap
- Data.Parameterized.HashTable a hash table for parameterized keys and values
- Data.Parameterized.List A type-indexed parameterized list
- Data.Parameterized.Map Finite maps with parameterized key and value types
- Data.Parameterized.NatRepr Type level natural number representation at runtime
- Data.Parameterized.Nonce Index generator in the ST monad.
- Data.Parameterized.Nonce.Transformers A typeclass and monad transformers for generating nonces.
- Data.Parameterized.Nonce.Unsafe A counter in the ST monad.
- Data.Parameterized.Pair A 2-tuple with identically parameterized elements
- Data.Parameterized.Peano Representations of a type-level natural at runtime.
- Data.Parameterized.Some a GADT that hides a type parameter
- Data.Parameterized.SymbolRepr a type family for representing a type-level string (AKA symbol) at runtime
- TH
- Data.Parameterized.TH.GADT Template Haskell primitives for working with large GADTs
- Data.Parameterized.TraversableF Traversing structures having a single parametric type
- Data.Parameterized.TraversableFC Traversing structures having a single parametric type followed by a fixed kind.
- Data.Parameterized.TraversableFC.WithIndex
TraversableFC
classes, but with indices.
- Data.Parameterized.TraversableFC.WithIndex
- Utils
- Data.Parameterized.Utils.BinTree Utilities for balanced binary trees.
- Data.Parameterized.Utils.Endian A common location for defining multi-byte value ordering.
- Data.Parameterized.Vector
- Data.Parameterized.WithRepr
- Data.Parameterized