diff --git a/src/TW/CodeGen/Haskell.hs b/src/TW/CodeGen/Haskell.hs
--- a/src/TW/CodeGen/Haskell.hs
+++ b/src/TW/CodeGen/Haskell.hs
@@ -77,7 +77,7 @@
     [ "data " <> fullType
     , "   = " <> unTypeName (sd_name sd)
     , "   { " <> T.intercalate "\n   , " (map (makeStructField (makeFieldPrefix $ sd_name sd)) $ sd_fields sd)
-    , "   } deriving (Show, Eq, Ord)"
+    , "   } deriving (Show, Read, Eq, Ord)"
     , ""
     , "instance " <> aesonPreds (sd_args sd) (aeson "ToJSON") <> aeson "ToJSON" <> " (" <> fullType <> ") where"
     , "    toJSON (" <> unTypeName (sd_name sd) <> " " <> funArgs <> ") ="
@@ -120,7 +120,7 @@
     T.unlines
     [ "data " <> fullType
     , "   = " <> T.intercalate "\n   | " (map makeEnumChoice $ ed_choices ed)
-    , "     deriving (Show, Eq, Ord)"
+    , "     deriving (Show, Read, Eq, Ord)"
     , ""
     , "instance " <> aesonPreds (ed_args ed) (aeson "ToJSON") <> aeson "ToJSON" <> " (" <> fullType <> ") where"
     , "    toJSON x ="
diff --git a/typed-wire.cabal b/typed-wire.cabal
--- a/typed-wire.cabal
+++ b/typed-wire.cabal
@@ -1,5 +1,5 @@
 name:                typed-wire
-version:             0.2.1.2
+version:             0.2.1.3
 synopsis:            WIP: Language idependent type-safe communication
 description:         Please see README.md
 homepage:            http://github.com/agrafix/typed-wire#readme
