diff --git a/README.md b/README.md
--- a/README.md
+++ b/README.md
@@ -92,7 +92,8 @@
       jsonDefinitions @User
 
     modules =
-      Pretty.modules definitions
+      Simplification.simplifyDefinition <$>
+        Pretty.modules definitions
 
   forM_ (HashMap.toList modules) $ \(_moduleName, contents) ->
     print contents
diff --git a/examples/User.hs b/examples/User.hs
--- a/examples/User.hs
+++ b/examples/User.hs
@@ -13,6 +13,7 @@
 import qualified Generics.SOP as SOP
 
 import qualified Language.Elm.Pretty as Pretty
+import qualified Language.Elm.Simplification as Simplification
 import Language.Haskell.To.Elm
 
 data User = User
@@ -36,7 +37,8 @@
 main = do
   let
     definitions =
-      jsonDefinitions @User
+      Simplification.simplifyDefinition <$>
+        jsonDefinitions @User
 
     modules =
       Pretty.modules definitions
diff --git a/haskell-to-elm.cabal b/haskell-to-elm.cabal
--- a/haskell-to-elm.cabal
+++ b/haskell-to-elm.cabal
@@ -4,10 +4,10 @@
 --
 -- see: https://github.com/sol/hpack
 --
--- hash: f0ee8106a8cc61bd98e1211c9ed203b336606ef09376e707701d942998727a04
+-- hash: 11ea0d703e5c54aa3a79066bb30c43082a688d310a648d6a80e6577cbad53ecf
 
 name:           haskell-to-elm
-version:        0.2.0.0
+version:        0.2.1.0
 synopsis:       Generate Elm types and JSON encoders and decoders from Haskell types
 description:    Please see the README on GitHub at <https://github.com/folq/haskell-to-elm#readme>
 category:       Elm, Compiler, Language
@@ -44,7 +44,7 @@
       aeson >=1.4.0
     , base >=4.7 && <5
     , bound >=2.0.0
-    , elm-syntax >=0.1.0 && <0.1.1
+    , elm-syntax >=0.2.0 && <0.2.1
     , generics-sop >=0.4.0 && <0.5.0
     , protolude >=0.2.3
     , text >=1.2.0
@@ -63,7 +63,7 @@
       aeson >=1.4.0
     , base >=4.7 && <5
     , bound >=2.0.0
-    , elm-syntax >=0.1.0 && <0.1.1
+    , elm-syntax >=0.2.0 && <0.2.1
     , generics-sop >=0.4.0 && <0.5.0
     , haskell-to-elm
     , protolude >=0.2.3
@@ -86,7 +86,7 @@
       aeson >=1.4.0
     , base >=4.7 && <5
     , bound >=2.0.0
-    , elm-syntax >=0.1.0 && <0.1.1
+    , elm-syntax >=0.2.0 && <0.2.1
     , generics-sop >=0.4.0 && <0.5.0
     , haskell-to-elm
     , protolude >=0.2.3
