resin 0.2.0.1 → 0.2.0.2
raw patch · 2 files changed
+5/−6 lines, 2 filesdep ~basePVP: major bump suggested
API removals or changes: PVP suggests a major version bump
Dependency ranges changed: base
API changes (from Hackage documentation)
- Resin.Binders.Tree.Internal: instance forall k (f :: k -> GHC.Types.Type). Data.Semigroupoid.Semigroupoid (Resin.Binders.Tree.Internal.Extract f)
+ Resin.Binders.Tree.Internal: instance forall k (f :: k -> GHC.Types.*). Data.Semigroupoid.Semigroupoid (Resin.Binders.Tree.Internal.Extract f)
- Resin.Binders.Tree: data Extract :: (k -> Type) -> k -> k -> Type
+ Resin.Binders.Tree: data Extract :: (k -> *) -> k -> k -> *
- Resin.Binders.Tree: data IxEq :: (k -> Type) -> k -> k -> Type
+ Resin.Binders.Tree: data IxEq :: (k -> *) -> k -> k -> *
- Resin.Binders.Tree: data TreeEq :: (k -> Type) -> k -> k -> Type
+ Resin.Binders.Tree: data TreeEq :: (k -> *) -> k -> k -> *
- Resin.Binders.Tree.Internal: data IxEq :: (k -> Type) -> k -> k -> Type
+ Resin.Binders.Tree.Internal: data IxEq :: (k -> *) -> k -> k -> *
- Resin.Binders.Tree.Internal: data TreeEq :: (k -> Type) -> k -> k -> Type
+ Resin.Binders.Tree.Internal: data TreeEq :: (k -> *) -> k -> k -> *
- Resin.Binders.Tree.Internal: newtype Extract :: (k -> Type) -> k -> k -> Type
+ Resin.Binders.Tree.Internal: newtype Extract :: (k -> *) -> k -> k -> *
Files
- resin.cabal +1/−1
- src/Resin/Binders/Tree/Internal.hs +4/−5
resin.cabal view
@@ -10,7 +10,7 @@ -- PVP summary: +-+------- breaking API changes -- | | +----- non-breaking API additions -- | | | +--- code changes with no API change-version: 0.2.0.1+version: 0.2.0.2 -- A short (one-line) description of the package. synopsis: High performance variable binders
src/Resin/Binders/Tree/Internal.hs view
@@ -1,6 +1,5 @@ {-# LANGUAGE FlexibleContexts,FlexibleInstances,GADTs,DataKinds, PolyKinds, KindSignatures #-} {-# LANGUAGE DeriveDataTypeable #-}--- {-# LANGUAGE TypeInType #-} {-# LANGUAGE ScopedTypeVariables #-} {-# LANGUAGE BangPatterns #-} {-# LANGUAGE TypeOperators #-}@@ -17,7 +16,7 @@ ,jumpDepthInject -- not sure if this operation is safe ,jumpDepthExtract -- not sure if thats safe too ) where-import Data.Kind+ import Numeric.Natural import Data.Semigroupoid --import Data.Coerce@@ -35,7 +34,7 @@ -} -data IxEq :: (k -> Type ) -> k -> k -> Type where+data IxEq :: (k -> * ) -> k -> k -> * where PolyRefl :: IxEq f i i MonoRefl :: forall f i . f i -> IxEq f i i @@ -89,7 +88,7 @@ -- extract is the dual of Inject -- aka Data.Semigroupoid.Dual is nearly the exact same type :)-newtype Extract :: (k -> Type ) -> k -> k -> Type where+newtype Extract :: (k -> * ) -> k -> k -> * where Dual :: ((Inject f) b a ) -> Extract f a b -- not sure if this is the right design vs -- :: Inject f b a -> Extract f a b --- (which has more explicit duality and less newtypery)@@ -99,7 +98,7 @@ o = \ (Dual l) (Dual r) -> Dual $ r `o` l -data TreeEq :: (k -> Type ) -> k -> k -> Type where+data TreeEq :: (k -> * ) -> k -> k -> * where TreeInject :: Inject f a b -> TreeEq f a b TreeExtract :: Extract f a b -> TreeEq f a b TreeRefl :: TreeEq f c c