diff --git a/language-docker.cabal b/language-docker.cabal
--- a/language-docker.cabal
+++ b/language-docker.cabal
@@ -1,11 +1,11 @@
--- This file has been generated from package.yaml by hpack version 0.20.0.
+-- This file has been generated from package.yaml by hpack version 0.21.2.
 --
 -- see: https://github.com/sol/hpack
 --
--- hash: e8cfea2aac29c979db723d52ddb6f2d6db1d5fdb3166ddc8f77daeab9c1142e0
+-- hash: 07ef36c63d55fe09579fa173145f7258f240ae908b7e7bdeb96f4b088c21b709
 
 name:           language-docker
-version:        3.0.0
+version:        3.0.1
 synopsis:       Dockerfile parser, pretty-printer and embedded DSL
 description:    All functions for parsing, printing and writting Dockerfiles are exported through @Language.Docker@. For more fine-grained operations look for specific modules that implement a certain functionality.
                 See the <https://github.com/hadolint/language-docker GitHub project> for the source-code and examples.
@@ -33,6 +33,21 @@
   location: https://github.com/hadolint/language-docker
 
 library
+  exposed-modules:
+      Language.Docker
+      Language.Docker.Parser
+      Language.Docker.Predef
+      Language.Docker.PrettyPrint
+      Language.Docker.Normalize
+      Language.Docker.Syntax
+      Language.Docker.Lexer
+      Language.Docker.Syntax.Lift
+      Language.Docker.EDSL
+      Language.Docker.EDSL.Quasi
+      Language.Docker.EDSL.Types
+  other-modules:
+      Language.Docker.EDSL.Plugins
+      Paths_language_docker
   hs-source-dirs:
       src
   ghc-options: -Wall -fno-warn-unused-do-bind -fno-warn-orphans
@@ -57,26 +72,18 @@
     , transformers
     , unordered-containers
     , yaml
-  exposed-modules:
-      Language.Docker
-      Language.Docker.Parser
-      Language.Docker.Predef
-      Language.Docker.PrettyPrint
-      Language.Docker.Normalize
-      Language.Docker.Syntax
-      Language.Docker.Lexer
-      Language.Docker.Syntax.Lift
-      Language.Docker.EDSL
-      Language.Docker.EDSL.Quasi
-      Language.Docker.EDSL.Types
-  other-modules:
-      Language.Docker.EDSL.Plugins
-      Paths_language_docker
   default-language: Haskell2010
 
 test-suite hspec
   type: exitcode-stdio-1.0
   main-is: Spec.hs
+  other-modules:
+      Language.Docker.EDSL.PluginsSpec
+      Language.Docker.EDSL.QuasiSpec
+      Language.Docker.EDSLSpec
+      Language.Docker.ExamplesSpec
+      Language.Docker.ParserSpec
+      Paths_language_docker
   hs-source-dirs:
       test
   build-depends:
@@ -105,11 +112,4 @@
     , transformers
     , unordered-containers
     , yaml
-  other-modules:
-      Language.Docker.EDSL.PluginsSpec
-      Language.Docker.EDSL.QuasiSpec
-      Language.Docker.EDSLSpec
-      Language.Docker.ExamplesSpec
-      Language.Docker.ParserSpec
-      Paths_language_docker
   default-language: Haskell2010
diff --git a/src/Language/Docker/PrettyPrint.hs b/src/Language/Docker/PrettyPrint.hs
--- a/src/Language/Docker/PrettyPrint.hs
+++ b/src/Language/Docker/PrettyPrint.hs
@@ -3,6 +3,7 @@
 {-# LANGUAGE NamedFieldPuns #-}
 {-# LANGUAGE DuplicateRecordFields #-}
 {-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE NoImplicitPrelude #-}
 
 module Language.Docker.PrettyPrint where
 
@@ -11,7 +12,9 @@
 import Data.List.NonEmpty as NonEmpty (NonEmpty(..), toList)
 import Data.String
 import Language.Docker.Syntax
-import Prelude hiding ((>>), (>>=), return)
+import Prelude
+       (Bool(..), Maybe(..), ($), (++), (.), map, maybe, mempty, reverse,
+        show, snd)
 import Text.PrettyPrint
 
 -- | Pretty print a 'Dockerfile' to a 'String'
