diff --git a/Data/Semigroup.hs b/Data/Semigroup.hs
--- a/Data/Semigroup.hs
+++ b/Data/Semigroup.hs
@@ -49,6 +49,9 @@
 class Semigroup a where
   (<>) :: a -> a -> a
 
+instance Semigroup b => Semigroup (a -> b) where
+  f <> g = \a -> f a <> g a
+
 instance Semigroup [a] where
   (<>) = (++)
 
diff --git a/semigroups.cabal b/semigroups.cabal
--- a/semigroups.cabal
+++ b/semigroups.cabal
@@ -1,6 +1,6 @@
 name:          semigroups
 category:      Algebra, Data, Data Structures, Math
-version:       0.3.4
+version:       0.3.4.1
 license:       BSD3
 cabal-version: >= 1.6
 license-file:  LICENSE
