pulling semiring in module

This commit is contained in:
Stephen Diehl
2016-04-19 09:32:59 -04:00
parent fba329438f
commit 0b3090973e
4 changed files with 21 additions and 29 deletions
+1 -1
View File
@@ -80,7 +80,7 @@ import Data.Foldable as X hiding (
foldr1
, foldl1
)
import Data.Semiring as X
import Semiring as X
import Data.Functor.Identity as X
#if ( __GLASGOW_HASKELL__ >= 800 )
+19
View File
@@ -0,0 +1,19 @@
{-# LANGUAGE Safe #-}
{-# LANGUAGE NoImplicitPrelude #-}
module Semiring (
Semiring(..),
zero,
) where
import Data.Monoid
-- | Alias for 'mempty'
zero :: Monoid m => m
zero = mempty
class Monoid m => Semiring m where
{-# MINIMAL one, (<.>) #-}
one :: m
(<.>) :: m -> m -> m