1 {-# OPTIONS -XRankNTypes -XMultiParamTypeClasses -XNoMonomorphismRestriction -XTypeOperators -XFlexibleInstances -XFunctionalDependencies #-}
2 -----------------------------------------------------------------------------
4 -- Module : GHC.HetMet.GArrowInstances
6 -- License : public domain
8 -- Maintainer : Adam Megacz <megacz@acm.org>
9 -- Stability : experimental
10 -- Portability : portable
12 module GHC.HetMet.GArrowInstances (
14 import Control.Category
15 import GHC.HetMet.GArrow
17 -- Various GArrow instances which may confuse the instance-inference
18 -- mechanism if imported wholesale
21 -- If a GArrow offers constants, then Haskell literals can be used to
22 -- accomplish a GArrowLiteral implementation (the converse is not
24 --instance GArrowConstant g (**) u r t => GArrowLiteral g (**) u r t where
25 -- ga_literal = ga_constant