diff --git a/gnuplot.cabal b/gnuplot.cabal
--- a/gnuplot.cabal
+++ b/gnuplot.cabal
@@ -1,5 +1,5 @@
 Name:             gnuplot
-Version:          0.5.4.1
+Version:          0.5.4.2
 License:          BSD3
 License-File:     LICENSE
 Author:           Henning Thielemann <haskell@henning-thielemann.de>
@@ -36,7 +36,8 @@
    .
    Alternative packages: @plot@, @HPlot@, @Chart@, @textPlot@, @easyplot@
 Tested-With:       GHC==7.4.2, GHC==7.6.3, GHC==7.8.4, GHC==7.10.3
-Cabal-Version:     >=1.6
+Tested-With:       GHC==8.2.1
+Cabal-Version:     >=1.8
 Build-Type:        Simple
 Extra-Source-Files:
   Makefile
@@ -49,7 +50,7 @@
   data/runtime.data
 
 Source-Repository this
-  Tag:         0.5.4.1
+  Tag:         0.5.4.2
   Type:        darcs
   Location:    http://code.haskell.org/gnuplot/
 
@@ -57,9 +58,6 @@
   Type:        darcs
   Location:    http://code.haskell.org/gnuplot/
 
-Flag splitBase
-  description: Choose the new smaller, split-up base package.
-
 Flag buildExamples
   description: Build example executables
   default:     False
@@ -78,19 +76,14 @@
     temporary >=1.1 && <1.3,
     array >=0.1 && <0.6,
     containers >=0.1 && <0.6,
-    utility-ht >=0.0.8 && <0.1,
+    utility-ht >=0.0.12 && <0.1,
     data-accessor-transformers >=0.2.1 && <0.3,
     data-accessor >=0.2.2 && <0.3,
     transformers >=0.3 && <0.6,
-    deepseq >=1.0 && <1.5
-  If flag(splitBase)
-    Build-Depends:
-      process >=1.0 && <1.5,
-      time >=1.5 && <1.7,
-      base >=2 && <5
-  Else
-    Build-Depends:
-      base >=1.0 && <2
+    deepseq >=1.0 && <1.5,
+    process >=1.0 && <1.7,
+    time >=1.5 && <1.9,
+    base >=2 && <5
 
   GHC-Options: -Wall
 
@@ -160,9 +153,14 @@
 
 Executable gnuplot-demo
   If flag(buildExamples)
-    Build-Depends: filepath
+    Build-Depends:
+      gnuplot,
+      time,
+      array,
+      filepath,
+      base
   Else
     Buildable: False
   GHC-Options: -Wall
-  Hs-Source-Dirs: src, execute/tmp, os/generic
-  Main-Is: Demo.hs
+  Main-Is: src/Demo.hs
+  Other-Modules: Paths_gnuplot
diff --git a/src/Graphics/Gnuplot/Simple.hs b/src/Graphics/Gnuplot/Simple.hs
--- a/src/Graphics/Gnuplot/Simple.hs
+++ b/src/Graphics/Gnuplot/Simple.hs
@@ -75,9 +75,10 @@
 import qualified Graphics.Gnuplot.Private.Command as Cmd
 import System.Process (rawSystem, )
 import Control.Functor.HT (void, )
+
+import qualified Data.List.Reverse.StrictElement as ListRev
 import Data.Foldable (foldMap, )
 import Data.Maybe (listToMaybe, mapMaybe, isNothing, )
-import Data.List.HT (dropWhileRev, )
 
 
 -- * User front-end
@@ -430,7 +431,7 @@
    let ranges = map (listToMaybe . flip mapMaybe attrs)
                     [xRangeFromAttr, yRangeFromAttr, zRangeFromAttr]
        showRng (l,r) = "[" ++ show l ++ ":" ++ show r ++ "]"
-   in  unwords (map (maybe "[:]" showRng) (dropWhileRev isNothing ranges))
+   in  unwords $ map (maybe "[:]" showRng) (ListRev.dropWhile isNothing ranges)
 
 interactiveTerm :: [Attribute] -> Bool
 interactiveTerm =
