diff --git a/alea.cabal b/alea.cabal
--- a/alea.cabal
+++ b/alea.cabal
@@ -1,5 +1,5 @@
 name:                alea
-version:             0.3.3.0
+version:             0.4.0.0
 synopsis:            a diceware passphrase generator
 description:
 
@@ -12,7 +12,7 @@
 license-file:        LICENSE
 author:              Rnhmjoj
 maintainer:          micheleguerinirocco@me.com
-copyright:           (C) Michele Guerini Rocco 2014
+copyright:           (C) Michele Guerini Rocco 2015
 category:            Utility
 build-type:          Simple
 extra-source-files:  README.md, LICENSE
@@ -27,8 +27,8 @@
   main-is:             Main.hs
   hs-source-dirs:      src
   default-language:    Haskell2010
-  other-modules:       Alea.Diceware, Alea.List, Alea.Random, Paths_alea
+  other-modules:       Alea.Diceware, Alea.List, Alea.Random
   other-extensions:    DeriveDataTypeable, RecordWildCards
-  build-depends:       base ==4.7.* , containers ==0.5.*,
-                       argparser ==0.3.*, threefish == 0.2.*
+  build-depends:       base >=4.8 && < 5.0, containers,
+                       argparser, threefish
   ghc-options:         -O2
diff --git a/src/Alea/Random.hs b/src/Alea/Random.hs
--- a/src/Alea/Random.hs
+++ b/src/Alea/Random.hs
@@ -3,4 +3,4 @@
 import Crypto.Threefish.Random
 
 randWords :: Int -> Int -> IO [Int]
-randWords n k = newSkeinGen >>= return . take k . randomRs (0, n-1)
+randWords n k = take k . randomRs (0, n-1) <$> newSkeinGen
diff --git a/src/Main.hs b/src/Main.hs
--- a/src/Main.hs
+++ b/src/Main.hs
@@ -3,7 +3,6 @@
 import System.IO
 import System.Console.ArgParser
 import Control.Monad
-import Control.Applicative
 
 import Paths_alea (getDataFileName)
 import Alea.Diceware
