diff --git a/probable.cabal b/probable.cabal
--- a/probable.cabal
+++ b/probable.cabal
@@ -1,5 +1,5 @@
 name:                probable
-version:             0.1.2
+version:             0.1.3
 synopsis:            Easy and reasonably efficient probabilistic programming and random generation
 description:         Easy and reasonably efficient probabilistic programming and random generation
                      .
@@ -65,7 +65,7 @@
 category:            Math, Statistics
 build-type:          Simple
 cabal-version:       >=1.10
-tested-with:         GHC == 7.6.3, GHC == 7.8.2, GHC == 7.10.1
+tested-with:         GHC == 8.0.2, GHC == 8.2.2
 extra-source-files:  bench/*.hs,
                      examples/*.hs,
                      README.md
@@ -80,11 +80,11 @@
                        Math.Probable.Distribution.Finite,
                        Math.Probable.Random
   other-modules:
-  build-depends:       base >=4.5 && <4.10,
-                       statistics >= 0.10,
+  build-depends:       base >=4.5 && <5,
+                       statistics >= 0.14,
                        vector >= 0.10,
                        mwc-random >= 0.10,
-                       primitive,
+                       primitive >= 0.6,
                        mtl,
                        transformers >= 0.3
 
diff --git a/src/Math/Probable/Distribution.hs b/src/Math/Probable/Distribution.hs
--- a/src/Math/Probable/Distribution.hs
+++ b/src/Math/Probable/Distribution.hs
@@ -30,7 +30,7 @@
 import Math.Probable.Distribution.Finite
 import Math.Probable.Random
 
-import Statistics.Distribution (ContGen, DiscreteGen, genContVar, genDiscreteVar)
+import Statistics.Distribution (ContGen, DiscreteGen, genContVar, genDiscreteVar, fromSample)
 import Statistics.Distribution.Beta
 import Statistics.Distribution.CauchyLorentz
 import qualified Statistics.Distribution.ChiSquared as Chi
@@ -245,8 +245,8 @@
 -- > , 1.7650436484843248 ]
 normalFromSample :: PrimMonad m
                  => Sample -- ^ sample
-                 -> RandT m Double
-normalFromSample = continuous . N.normalFromSample
+                 -> Maybe (RandT m Double)
+normalFromSample s = continuous <$> (fromSample s :: Maybe N.NormalDistribution)
 
 -- | Exponential distribution (from @Statistics.Distribution.Exponential@)
 -- 
@@ -269,8 +269,8 @@
 -- > , 0.8891555734786789 ]
 exponentialFromSample :: PrimMonad m
                       => Sample
-                      -> RandT m Double
-exponentialFromSample = continuous . E.exponentialFromSample
+                      -> Maybe (RandT m Double)
+exponentialFromSample s = continuous <$> (fromSample s :: Maybe E.ExponentialDistribution)
 
 
 
