diff --git a/README.md b/README.md
--- a/README.md
+++ b/README.md
@@ -1,5 +1,5 @@
 `generics-eot` is a library for datatype generic programming that tries to be
 very simple to understand and use. It's heavily inspired by the awesome
-`generics-sop` package (http://hackage.haskell.org/package/generics-sop).
+[`generics-sop`](http://hackage.haskell.org/package/generics-sop) package.
 
 Documentation can be found here: http://generics-eot.readthedocs.org/en/latest/
diff --git a/examples/Catamorphisms.hs b/examples/Catamorphisms.hs
--- a/examples/Catamorphisms.hs
+++ b/examples/Catamorphisms.hs
@@ -35,7 +35,7 @@
 instance Cata Void dest where
   type Typ Void dest = dest
   cata :: Void -> Proxy dest -> dest
-  cata void = seq void (error "impossible")
+  cata = absurd
   cataConst Proxy = id
 
 class Cons fields dest where
diff --git a/examples/ToString.hs b/examples/ToString.hs
--- a/examples/ToString.hs
+++ b/examples/ToString.hs
@@ -46,7 +46,7 @@
   toStringConss [] _ = error "impossible"
 
 instance ToStringG Void where
-  toStringConss _ void = seq void (error "impossible")
+  toStringConss _ = absurd
 
 class ToStringFields a where
   toStringFields :: a -> [String]
diff --git a/generics-eot.cabal b/generics-eot.cabal
--- a/generics-eot.cabal
+++ b/generics-eot.cabal
@@ -2,10 +2,10 @@
 --
 -- see: https://github.com/sol/hpack
 --
--- hash: b474ea69101a3a9e75802091552ed5f46295c83b037837798edc3c3b21dee721
+-- hash: 6df104be937df5ce9342be8c11c0bdc70083eb7364767d4abc3751ab800a2361
 
 name:           generics-eot
-version:        0.2.1.2
+version:        0.3
 synopsis:       A library for generic programming that aims to be easy to understand
 category:       Generics
 homepage:       https://github.com/soenkehahn/generics-eot#readme
diff --git a/src/Generics/Eot.hs b/src/Generics/Eot.hs
--- a/src/Generics/Eot.hs
+++ b/src/Generics/Eot.hs
@@ -17,14 +17,15 @@
   Constructor(..),
   Fields(..),
 
-  -- * Void
-  Void,
   -- * Useful Re-exports
   Generic,
   Proxy(..),
+  Void,
+  absurd,
   ) where
 
 import           Data.Proxy
+import           Data.Void
 import           GHC.Exts (Constraint)
 import           GHC.Generics hiding (Datatype, Constructor)
 
diff --git a/src/Generics/Eot/Eot.hs b/src/Generics/Eot/Eot.hs
--- a/src/Generics/Eot/Eot.hs
+++ b/src/Generics/Eot/Eot.hs
@@ -15,10 +15,10 @@
 
 module Generics.Eot.Eot (
   HasEotG(..),
-  Void,
   ) where
 
 import           Data.Proxy
+import           Data.Void
 import           GHC.Generics
 
 -- * datatype
@@ -55,20 +55,12 @@
   toEotConstructors = Left . toEotFields . unM1
   fromEotConstructors = \ case
     Left fields -> M1 $ fromEotFields fields
-    Right void -> seq void (error "impossible")
-
--- | Uninhabited type.
-data Void
-  deriving (Generic)
-
-deriving instance Show Void
-deriving instance Eq Void
-deriving instance Ord Void
+    Right void -> absurd void
 
 instance HasConstructorsG V1 where
   type Constructors V1 = Void
   toEotConstructors v1 = seq v1 (error "impossible")
-  fromEotConstructors void = seq void (error "impossible")
+  fromEotConstructors = absurd
 
 -- * GEither
 
@@ -92,7 +84,7 @@
 
 instance Normalize Void b where
   type GEither Void b = b
-  gLeft void Proxy = seq void (error "impossible")
+  gLeft void Proxy = absurd void
   gRight Proxy b = b
   gEither :: b -> Either Void b
   gEither = Right
diff --git a/src/Generics/Eot/Tutorial.lhs b/src/Generics/Eot/Tutorial.lhs
--- a/src/Generics/Eot/Tutorial.lhs
+++ b/src/Generics/Eot/Tutorial.lhs
@@ -169,11 +169,13 @@
 - `Void`:
   We need this instance to make the compiler happy, but it'll never be
   used. If you look at the type you can also see that: an argument of type
-  `Void` cannot be constructed.
+  `Void` cannot be constructed. (Often the function `Data.Void.absurd` comes in
+  handy for implementing these cases. `generics-eot` re-exports both the type
+  `Data.Void.Void` and `Data.Void.absurd` for convenience.)
 
 ``` haskell
 instance EotSerialize Void where
-  eotSerialize _ void = seq void $ error "impossible"
+  eotSerialize _n void = absurd void
 ```
 
 - `(x, xs)`:
