diff --git a/CHANGES.txt b/CHANGES.txt
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -1,5 +1,7 @@
 Changelog for Extra
 
+0.5.1
+    Use uncons from GHC 7.9 and above
 0.5
     Use the sortOn from GHC 7.9 and above
     Remove getProcessorCount
diff --git a/extra.cabal b/extra.cabal
--- a/extra.cabal
+++ b/extra.cabal
@@ -1,7 +1,7 @@
 cabal-version:      >= 1.10
 build-type:         Simple
 name:               extra
-version:            0.5
+version:            0.5.1
 license:            BSD3
 license-file:       LICENSE
 category:           Development
diff --git a/src/Data/List/Extra.hs b/src/Data/List/Extra.hs
--- a/src/Data/List/Extra.hs
+++ b/src/Data/List/Extra.hs
@@ -90,6 +90,7 @@
 list nil cons [] = nil
 list nil cons (x:xs) = cons x xs
 
+#if __GLASGOW_HASKELL__ < 709
 -- | If the list is empty returns 'Nothing', otherwise returns the 'head' and the 'tail'.
 --
 -- > uncons "test" == Just ('t',"est")
@@ -98,6 +99,7 @@
 uncons :: [a] -> Maybe (a, [a])
 uncons [] = Nothing
 uncons (x:xs) = Just (x,xs)
+#endif
 
 -- | If the list is empty returns 'Nothing', otherwise returns the 'init' and the 'last'.
 --
