diff --git a/Type/Ord/SpineSerialize.hs b/Type/Ord/SpineSerialize.hs
--- a/Type/Ord/SpineSerialize.hs
+++ b/Type/Ord/SpineSerialize.hs
@@ -1,4 +1,4 @@
-{-# LANGUAGE TypeFamilies, QuasiQuotes, TypeOperators, UndecidableInstances #-}
+{-# LANGUAGE TypeFamilies, TypeOperators, UndecidableInstances, DataKinds, PolyKinds #-}
 
 {- |
 
@@ -14,7 +14,7 @@
 
 -}
 module Type.Ord.SpineSerialize
-  (SpineCompare, Compare, spineSerializeType, spineSerializeTypeAsHash,
+  (module Type.Ord.SpineSerialize,
    module Type.Spine, module Type.Serialize, module Type.Ord) where
 
 import Type.Spine
@@ -26,28 +26,41 @@
 
 
 type SpineCompare l r = Ord.Compare (Spine l) (Spine r)
-type Compare l r = SpineCompare ([qK|*|] l) ([qK|*|] r)
+type Compare l r = SpineCompare l r
 
-type instance Ord.Compare (TypeName l) (TypeName r) =
+type instance Ord.Compare (Atom l) (Atom r) =
   Ord.Compare (Serialize l) (Serialize r)
 type instance Ord.Compare (lx :@ ly) (rx :@ ry) =
   OrdCase (Ord.Compare (Spine lx) (Spine rx))
      LT
      (Ord.Compare (Spine ly) (Spine ry))
      GT
-type instance Ord.Compare (TypeName l) (rx :@ ry) = LT
-type instance Ord.Compare (lx :@ ly) (TypeName r) = GT
+type instance Ord.Compare (Atom l) (rx :@ ry) = LT
+type instance Ord.Compare (lx :@ ly) (Atom r) = GT
 
 
 
 spineSerializeType :: Name -> Q [Dec]
 spineSerializeType n = do
-  x <- serializeType n
-  y <- spineType n
+  x <- serializeType_data n
+  y <- spineType_d n
   return $ x ++ y
 
 spineSerializeTypeAsHash :: Name -> Q [Dec]
 spineSerializeTypeAsHash n = do
-  x <- serializeTypeAsHash n
-  y <- spineType n
+  x <- serializeTypeAsHash_data n
+  y <- spineType_d n
+  return $ x ++ y
+
+
+spineSerializeType_pro :: Name -> Q [Dec]
+spineSerializeType_pro n = do
+  x <- serializeType_pro n
+  y <- spineType_pro n
+  return $ x ++ y
+
+spineSerializeTypeAsHash_pro :: Name -> Q [Dec]
+spineSerializeTypeAsHash_pro n = do
+  x <- serializeTypeAsHash_pro n
+  y <- spineType_pro n
   return $ x ++ y
diff --git a/type-ord-spine-cereal.cabal b/type-ord-spine-cereal.cabal
--- a/type-ord-spine-cereal.cabal
+++ b/type-ord-spine-cereal.cabal
@@ -1,5 +1,5 @@
 Name:           type-ord-spine-cereal
-Version:        0.1
+Version:        0.2
 License:        BSD3
 License-File:   LICENSE
 Author:         Nicolas Frisby <nicolas.frisby@gmail.com>
@@ -10,7 +10,8 @@
 Synopsis:       Generic type-level comparison of types
 
 Description: Generic type-level comparison of @type-spine@- and
-  @type-cereal@-enabled types.
+  @type-cereal@-enabled types. See the @yoko@ package's \"Data.Yoko.HCompos\"
+  and \"Data.Yoko.TH\" modules for a (rather large) use case.
 
 Cabal-Version: >= 1.6.0.1
 
@@ -19,6 +20,6 @@
 
 Library
   Build-Depends: base >= 4 && < 5, template-haskell
-  Build-Depends: type-spine < 0.2, type-cereal < 0.2, type-ord < 0.2
+  Build-Depends: type-spine >= 0.2, type-cereal >= 0.2, type-ord >= 0.2
 
   Exposed-Modules: Type.Ord.SpineSerialize
