diff --git a/TypeLevel/NaturalNumber.hs b/TypeLevel/NaturalNumber.hs
--- a/TypeLevel/NaturalNumber.hs
+++ b/TypeLevel/NaturalNumber.hs
@@ -1,14 +1,15 @@
 {- Copyright (c) 2008, Scott E. Dillard. All rights reserved. -}
 {- Copyright (c) 2010, Gregory M. Crosswhite. All rights reserved. -}
 
+{-# LANGUAGE DeriveDataTypeable #-}
 {-# LANGUAGE EmptyDataDecls #-}
 
 module TypeLevel.NaturalNumber where
 
 import Data.Typeable
 
-data Zero
-data SuccessorTo n
+data Zero deriving Typeable
+data SuccessorTo n deriving Typeable
 
 type N0  = Zero
 type N1  = SuccessorTo N0
@@ -98,8 +99,3 @@
     compare _ _ = EQ
 instance NaturalNumber n => Ord (SuccessorTo n) where
     compare _ _ = EQ
-
-instance Typeable Zero where
-    typeOf n = mkTyConApp (mkTyCon $ "N#0") []
-instance NaturalNumber n => Typeable (SuccessorTo n) where
-    typeOf n = mkTyConApp (mkTyCon $ "N#" ++ show (naturalNumberAsInt n + 1)) []
diff --git a/type-level-natural-number.cabal b/type-level-natural-number.cabal
--- a/type-level-natural-number.cabal
+++ b/type-level-natural-number.cabal
@@ -1,15 +1,15 @@
 Name:                type-level-natural-number
-Version:             1.1.1
+Version:             2.0
 License:             BSD3
 License-file:        LICENSE
 Author:              Gregory Crosswhite
-Maintainer:          Gregory Crosswhite <gcross@phys.washington.edu>
+Maintainer:          Gregory Crosswhite <gcrosswhite@gmail.com>
 Stability:           Provisional
-Synopsis:            Simple, Haskell 2010-compatible type level natural numbers
-Description:         This is a simple, Haskell 2010 compatible implementation
-                     of type-level natural numbers.  Operations requiring
-                     non-Haskell 2010 language extensions have been split
-                     into a separate package.
+Synopsis:            Simple type level natural numbers
+Description:         This is a simple implementation of type-level natural
+                     numbers that only requires DeriveDataTypeable.  Operations
+                     requiring more language extensions have been split into a
+                     separate package.
 		     .
                      The difference between this package and the many
                      others on Hackage implementing type-level
@@ -31,6 +31,11 @@
 		     .
                      Difference from 1.1:  Performance enhancements for
                      naturalNumberAsInt.  Simplified Show implementation.
+             .
+                     Difference from 1.1.1:  Gave up on Haskell 2010
+                     compatibility since as of GHC 7.8 manually deriving from
+                     Typeable is no longer allowed; now I use
+                     DeriveDataTypeable to construct the instances.
 Cabal-version:       >=1.6
 Build-type:          Simple
 Category:	     Type System,Data
