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.9.1
+version:       0.9.2
 license:       BSD3
 cabal-version: >= 1.10
 license-file:  LICENSE
diff --git a/src/Data/Semigroup.hs b/src/Data/Semigroup.hs
--- a/src/Data/Semigroup.hs
+++ b/src/Data/Semigroup.hs
@@ -2,6 +2,9 @@
 #ifdef LANGUAGE_DeriveDataTypeable
 {-# LANGUAGE DeriveDataTypeable #-}
 #endif
+#if defined(__GLASGOW_HASKELL__) && __GLASGOW_HASKELL__ >= 702
+{-# LANGUAGE DefaultSignatures #-}
+#endif
 -----------------------------------------------------------------------------
 -- |
 -- Module      :  Data.Semigroup
@@ -79,7 +82,15 @@
   -- | An associative operation.
   --
   -- > (a <> b) <> c = a <> (b <> c)
+  --
+  -- If @a@ is also a 'Monoid' we further require
+  --
+  -- > (<>) = mappend
   (<>) :: a -> a -> a
+#if defined(__GLASGOW_HASKELL__) && __GLASGOW_HASKELL__ >= 702
+  default (<>) :: Monoid a => a -> a -> a
+  (<>) = mappend
+#endif
 
   -- | Reduce a non-empty list with @\<\>@
   --
