diff --git a/src/Main.hs b/src/Main.hs
--- a/src/Main.hs
+++ b/src/Main.hs
@@ -60,14 +60,11 @@
 options :: Consumer [Text] (Option ()) (Action,ParseType,[Extension])
 options = (,,) <$> action <*> typ <*> exts
   where action =
-          sumConstant Parse "parse" "Parse and spit out spans" <|>
-          sumConstant Check "check" "Just check the syntax"
+          constant "parse" "Parse and spit out spans" Parse <|>
+          constant "check" "Just check the syntax" Check
         typ =
-          sumConstant Decl "decl" "Parse a declaration" <|>
-          sumConstant Stmt "stmt" "Parse a statement"
-        sumConstant sum' text desc =
-          fmap (const sum')
-               (constant text desc)
+          constant "decl" "Parse a declaration" Decl <|>
+          constant "stmt" "Parse a statement" Stmt
         exts =
           fmap getExtensions
                (many (prefix "X" "Language extension"))
diff --git a/structured-haskell-mode.cabal b/structured-haskell-mode.cabal
--- a/structured-haskell-mode.cabal
+++ b/structured-haskell-mode.cabal
@@ -1,5 +1,5 @@
 name:                structured-haskell-mode
-version:             1.0.9
+version:             1.0.10
 synopsis:            Structured editing Emacs mode for Haskell
 description:         Structured editing Emacs mode for Haskell.
 homepage:            https://github.com/chrisdone/structured-haskell-mode
@@ -44,4 +44,4 @@
   build-depends:     base >= 4 && < 5
                    , haskell-src-exts == 1.15.*
                    , text
-                   , descriptive == 0.2.*
+                   , descriptive == 0.3.*
