Changelog for parameterized-utils-2.0
Changelog for the parameterized-utils package
2.0 -- 2019 Apr 03
- Drop support for GHC versions prior to GHC 8.2
- Various Haddock and module updates.
- Data.Parameterized.Classes
- Added function:
ordFCompose - Added
OrdFinstance forCompose
- Added function:
- Data.Parameterized.ClassesC
- Marked as
Safehaskell via pragma - Added
OrdCinstance forSome
- Marked as
- Data.Parameterized.Compose
- Update
testEqualityComposeBareto be more kind-polymorphic. - Marked as
Safehaskell via pragma
- Update
- Data.Parameterized.Context
- Added
diffIsAppendfunction to extract the contextual difference between twoContexts (as aDiff) as anIsAppend(new) data value if the left is a sub-context of the right.
- Added
- Data.Parameterized.NatRepr
- Change runtime representation from
InttoNatural - Add function
intValueto recover anIntfrom aNatRepr. - Add constructor function
mkNatReprto construct aNatReprfrom aNatural. - Removed awkward backdoor for directly creating
NatReprvalues; the single needed internal usage is now handled internally.
- Change runtime representation from
- Data.Parameterized.Peano
- Newly added module.
- Defines a type
PeanoandPeanoReprfor representing a type-level natural at runtime. - The runtime representation of
PeanoReprisWord64 - Has both safe and unsafe implementations.
- Data.Parameterized.WithRepr
- Newly added module.
- This module declares a class
IsReprwith a single methodwithReprthat can be used to derive a 'KnownRepr' constraint from an explicit 'Repr' argument. Clients of this method need only create an empty instance. The default implementation suffices.
1.0.8 -- 2019 Feb 01
- Data.Parameterized.Map
- Fixed
MapFfunctionsfilterandfilterWithKey - Added
MapFfunction:mapWithKey
- Fixed
- Data.Parameterized.NatRepr
- Un-deprecate
withKnownNat
- Un-deprecate
- Data.Parameterized.Context
- Updated some haddock documentation (esp.
CtxEmbeddingdata structure).
- Updated some haddock documentation (esp.
- Data.Parameterized.Nonce
- Fixed
newIONonceGeneratorhaddock documentation (IO monad, not ST monad). - Added
countNoncesGeneratedfor profiling Nonce usage.
- Fixed
- Data.Parameterized.TraversableF
- Added
FunctorF,FoldableF, andTraversableFinstances forComposefrom Data.Functor.Compose
- Added
- Data.Parameterized.ClassesC
- Newly added module.
- Declares
TestEqualityCandOrdCclasses for working with types that have kind(k -> *) -> *for anyk.
- Data.Parameterized.Compose
- Newly added module.
- Orphan instance and
testEqualityComposeBarefunction for working with Data.Functor.Compose.
- Data.Parameterized.TestEquality
- Newly added module.
- Utilities for working with Data.Type.TestEquality.
1.0.7 -- 2018 Nov 17
- Data.Parameterized.Map
- Added
MapFfunctions:filterfilterWithKey
- Added
1.0.6 -- 2018 Nov 19
- Add support for GHC 8.6.
- Data.Parameterized.Map
- Added functions:
foldlWithKeyandfoldlWithKey'(strict)foldrWithKeyandfoldrWithKey'(strict)mapMaybeWithKey
- Added functions:
1.0.5 -- 2018 Sep 04
- Data.Parameterized.Context
- Add function:
take,appendEmbedding,appendDiff - Diff is type role nominal in both parameters.
- Add function:
1.0.4 -- 2018 Aug 29
- Data.Parameterized.Context
- Add
traverseAndCollect. Allows traversal of an Assignment in order from left to right, collecting the results of a visitor function monoidically.
- Add
- Data.Parameterized.DecidableEq
- Newly added module. The
DecidableEqclass represents decideable equality on a type family as a superclass ofTestEquality, where the latter cannot provide evidence of non-equality.
- Newly added module. The
- Data.Parameterized.NatRepr
- Add
DecidableEqinstance for NatRepr. - Add functions:
decideLeqisZeroOrGT1lessThanIrreflexivelessThanAsymmetricnatRecStrong-- recursor with strong inductionnatRecBounded-- bounded recursornatFromZero
- Add
- Data.Parameterized.Vector
- Add construction functions:
singleton,cons,snoc,generate, andgenerateM - Add functions:
splitWithA(applicativesplitWith).
- Add construction functions:
1.0.3 -- 2018 Aug 24
- Move
lemmaMulfrom Vector to NatRepr. - Add stricter role annotations:
NatRepris nominal.Vectoris nominal in the first parameter and representational in the second.
- Data.Parameterized.NatRepr
- Provide a backdoor for directly creating
NatReprvalues. Use carefully.
- Provide a backdoor for directly creating
- Data.Parameterized.Vector
- Add Show and Eq instances
- Add functions:
joinWithM,reverse
1.0.2 -- 2018 Aug 23
- Allow function passed to
traverseF_,traverseFC_, andforMFC_to return a value instead of null (()). - Data.Parameterized.Vector
- Newly added module. A fixed-size vector of typed elements.
- Data.Parameterized.Utils.Endian
- Newly added module. Used in Vector.
1.0.1 -- 2018 Aug 13
Baseline for changelog tracking.