diff --git a/shh-extras.cabal b/shh-extras.cabal
--- a/shh-extras.cabal
+++ b/shh-extras.cabal
@@ -1,6 +1,6 @@
 cabal-version:       >=1.10
 name:                shh-extras
-version:             0.1.0.1
+version:             0.1.0.2
 synopsis:            Utility functions for using shh
 description:         Provides useful functions for setting up Shh as an
                      interactive shell.
@@ -20,7 +20,7 @@
 library
   exposed-modules: Shh.Prompt
   build-depends:
-    base >=4.11 && <4.13,
+    base >=4.11 && <4.17,
     shh  >= 0.2.0.0,
     time,
     hostname
diff --git a/src/Shh/Prompt.hs b/src/Shh/Prompt.hs
--- a/src/Shh/Prompt.hs
+++ b/src/Shh/Prompt.hs
@@ -9,7 +9,9 @@
 import Data.List
 
 -- | The type of GHCi prompt functions
-type PromptFn = [String] -> Int -> IO String
+type PromptFn = [String] -- ^ names of the modules currently in scope
+                -> Int -- ^ line number (as referenced in compiler messages) of the current prompt
+                -> IO String
 
 -- | Format a prompt line suitable for use with Shh.
 --
@@ -58,6 +60,6 @@
                 home <- getEnv "HOME"
                 if home `isPrefixOf` pwd
                 then
-                    pure $ "~" <> drop (length home) pwd
+                    pure $ '~' : drop (length home) pwd
                 else
                     pure pwd
