bound-extras 0 → 0.0.1
raw patch · 4 files changed
+48/−53 lines, 4 filesdep ~basedep ~bifunctorsdep ~hashablesetup-changedPVP: major bump suggested
API removals or changes: PVP suggests a major version bump
Dependency ranges changed: base, bifunctors, hashable, tasty
API changes (from Hackage documentation)
- Control.Monad.Module: instance GHC.Base.Monad m => Control.Monad.Module.Module m Data.Functor.Identity.Identity
+ Bound.ScopeT: instance (forall (f :: * -> *). GHC.Base.Functor f => GHC.Base.Functor (t f)) => Bound.Class.Bound (Bound.ScopeT.ScopeT n t)
+ Control.Monad.Module: infixl 1 >>==
+ Control.Monad.Module: instance GHC.Base.Functor f => Control.Monad.Module.Module f Data.Functor.Identity.Identity
Files
- CHANGELOG.md +7/−0
- Setup.hs +0/−2
- bound-extras.cabal +40/−50
- src/Control/Monad/Module.hs +1/−1
+ CHANGELOG.md view
@@ -0,0 +1,7 @@+# 0.0.1++- Relax + ```diff+ - instance Monad m => Module m Identity where+ + instance Functor f => Module f Identity where+ ```
− Setup.hs
@@ -1,2 +0,0 @@-import Distribution.Simple-main = defaultMain
bound-extras.cabal view
@@ -1,9 +1,8 @@-cabal-version: 2.2-name: bound-extras-version: 0--synopsis: ScopeH and ScopeT extras for bound-category: Language, Compilers, Interpreters+cabal-version: 2.2+name: bound-extras+version: 0.0.1+synopsis: ScopeH and ScopeT extras for bound+category: Language, Compilers, Interpreters description: Provides more complex @Scope@ variants; @ScopeT@ and @ScopeH@: .@@ -21,75 +20,66 @@ Look into @examples/@ directory for /System F/ and /Bidirectional STLC/ implemented with a help of 'ScopeH'. -license: BSD-3-Clause-license-file: LICENSE-copyright: (c) 2018 Oleg Grenrus--author: Oleg Grenrus, Edward Kmett-maintainer: Oleg Grenrus <oleg.grenrus@iki.fi>-homepage: https://github.com/phadej/bound-extras-bug-reports: https://github.com/phadej/bound-extras/issues--tested-with:- GHC ==8.0.2- || ==8.2.2- || ==8.4.3- || ==8.6.1--extra-source-files:- examples/*.txt+license: BSD-3-Clause+license-file: LICENSE+copyright: (c) 2018 Oleg Grenrus+author: Oleg Grenrus, Edward Kmett+maintainer: Oleg Grenrus <oleg.grenrus@iki.fi>+homepage: https://github.com/phadej/bound-extras+bug-reports: https://github.com/phadej/bound-extras/issues+tested-with: GHC ==8.0.2 || ==8.2.2 || ==8.4.4 || ==8.6.5 || ==8.8.1+extra-source-files: CHANGELOG.md examples/*.txt source-repository head- type: git+ type: git location: https://github.com/phadej/bound-extras library default-language: Haskell2010 hs-source-dirs: src ghc-options: -Wall- exposed-modules: Bound.ScopeH Bound.ScopeT Control.Monad.Module + -- GHC boot libraries build-depends:- -- GHC boot libraries- , base ^>=4.9.1.0 || ^>= 4.10.1.0 || ^>=4.11.1.0- , deepseq ^>=1.4.2.0- , transformers ^>=0.5.0.0-- -- other deps- , bound ^>=2.0.1- , hashable ^>=1.2.7.0+ , base ^>=4.9.1.0 || ^>=4.10.1.0 || ^>=4.11.1.0 || ^>=4.12.0.0+ , deepseq ^>=1.4.2.0+ , hashable ^>=1.2.7.0+ , transformers ^>=0.5.0.0 - if !impl(ghc >= 8.2)- build-depends:- bifunctors ^>=5.5.3+ -- other deps+ build-depends:+ , bound ^>=2.0.1 + if !impl(ghc >=8.2)+ build-depends: bifunctors ^>=5.5.3 test-suite examples type: exitcode-stdio-1.0 main-is: Examples.hs other-modules:- Pretty BiSTLC+ Pretty SystemF default-language: Haskell2010 hs-source-dirs: examples ghc-options: -Wall-- build-depends: base, bound, bound-extras- , containers ^>=0.5.7.1- , filepath ^>=1.4.1.1- , pretty ^>=1.1.3.3- , tasty ^>=1.1.0.3- , text-short ^>=0.1.2- , tasty-golden ^>=2.3.2- , transformers ^>=0.5.0.0- , utf8-string ^>=1.0.1.1+ build-depends:+ , base+ , bound+ , bound-extras+ , containers ^>=0.5.7.1 || ^>=0.6.0.1+ , filepath ^>=1.4.1.1+ , pretty ^>=1.1.3.3+ , tasty >=1.1.0.3 && <1.3+ , tasty-golden ^>=2.3.2+ , text-short ^>=0.1.2+ , transformers ^>=0.5.0.0+ , utf8-string ^>=1.0.1.1 - if !impl(ghc >= 8.2)- build-depends:- bifunctors ^>=5.5.3+ if !impl(ghc >=8.2)+ build-depends: bifunctors
src/Control/Monad/Module.hs view
@@ -49,7 +49,7 @@ composeAction :: (Functor f, Monad m) => Compose f m a -> (a -> m b) -> Compose f m b composeAction (Compose fma) amb = Compose (fmap (>>= amb) fma) -instance Monad m => Module m Identity where+instance Functor f => Module f Identity where fa >>== k = fmap (runIdentity . k) fa instance Monad m => Module (Scope b m) m where