packages feed

ffunctor (empty) → 1.0.0

raw patch · 3 files changed

+75/−0 lines, 3 filesdep +base

Dependencies added: base

Files

+ LICENSE view
@@ -0,0 +1,31 @@+FFunctor++Copyright 2019, Sam Halliday+All rights reserved.++Redistribution and use in source and binary forms, with or without+modification, are permitted provided that the following conditions are met:++- Redistributions of source code must retain the above copyright notice,+this list of conditions and the following disclaimer.+ +- Redistributions in binary form must reproduce the above copyright notice,+this list of conditions and the following disclaimer in the documentation+and/or other materials provided with the distribution.+ +- Neither name of the University nor the names of its contributors may be+used to endorse or promote products derived from this software without+specific prior written permission. ++THIS SOFTWARE IS PROVIDED BY THE UNIVERSITY COURT OF THE UNIVERSITY OF+GLASGOW AND THE CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES,+INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND+FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE+UNIVERSITY COURT OF THE UNIVERSITY OF GLASGOW OR THE CONTRIBUTORS BE LIABLE+FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL+DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR+SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER+CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT+LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY+OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH+DAMAGE.
+ ffunctor.cabal view
@@ -0,0 +1,33 @@+cabal-version:       2.2+name:                ffunctor+version:             1.0.0+synopsis:            FFunctor typeclass+license:             BSD-3-Clause+license-file:        LICENSE+author:              Sam Halliday+maintainer:          Sam Halliday+copyright:           2019 Sam Halliday+bug-reports:         https://gitlab.com/fommil/fommil/merge_requests+tested-with:         GHC ^>= 8.4.4 || ^>= 8.6.3+category:            Constraints+description:+  Micro library with a Higher kinded Functor in the spirit of HFunctor,+  MFunctor and MonadTrans.+  .+  Useful to map over the type parameter in a record of+  functions, e.g. https://www.benjamin.pizza/posts/2017-12-15-functor-functors.html++source-repository head+  type: git+  location: https://gitlab.com/fommil/ffunctor+   +common deps+  build-depends:    , base ^>= 4.11.1.0 || ^>= 4.12.0.0+  ghc-options:        -Wall+                      -Werror=missing-home-modules+  default-language:   Haskell2010++library+  import:             deps+  hs-source-dirs:     library+  exposed-modules:    Data.FFunctor
+ library/Data/FFunctor.hs view
@@ -0,0 +1,11 @@+{-# LANGUAGE ExplicitForAll #-}+{-# LANGUAGE KindSignatures #-}++-- | Functor of Functors+module Data.FFunctor where++class FFunctor (f :: (* -> *) -> *) where+--ffmap :: (Functor m, Functor n) => (m ~> n) -> f m -> f n+  ffmap :: forall m n a . (Functor m, Functor n) => (m a -> n a) -> f m -> f n++-- TODO is there anything from stdlib that could have an instance?