diff --git a/prologue.cabal b/prologue.cabal
--- a/prologue.cabal
+++ b/prologue.cabal
@@ -2,10 +2,10 @@
 --
 -- see: https://github.com/sol/hpack
 --
--- hash: d1ea16d1ed3a0340ac20cadbb8452762d4d25ee6f46d882b5ac3404607590279
+-- hash: 632dbbfd5f8347d3d80a8663f104b361a450243c2a693d7884c1e3dd1f0a8b5c
 
 name:           prologue
-version:        3.2.0
+version:        3.2.1
 synopsis:       Better, more general Prelude exporting common utilities.
 description:    Replacement for the Haskell's Prelude, exposing more commonly used functions and patching old GHC ones to behave in the newest GHC's way.
 category:       control
@@ -94,6 +94,7 @@
       Prologue.Data.Traversable
       Prologue.Data.Tuple
       Prologue.Debug.Placeholders
+      Prologue.OrphanInstances
       Prologue.Placeholders_old
       Prologue.Prim
       Prologue.Text.Show
diff --git a/src/Prologue.hs b/src/Prologue.hs
--- a/src/Prologue.hs
+++ b/src/Prologue.hs
@@ -1,6 +1,10 @@
 module Prologue (module Prologue, module X) where
 
 
+-- === Orphans === --
+
+import Prologue.OrphanInstances()
+
 
 -- === Basic === --
 
diff --git a/src/Prologue/OrphanInstances.hs b/src/Prologue/OrphanInstances.hs
new file mode 100644
--- /dev/null
+++ b/src/Prologue/OrphanInstances.hs
@@ -0,0 +1,10 @@
+{-# OPTIONS_GHC -Wno-orphans #-}
+
+module Prologue.OrphanInstances where
+
+import Data.Default
+import Control.Monad.Identity
+
+
+instance Default a => Default (Identity a) where
+    def = Identity def ; {-# INLINE def #-}
diff --git a/src/Prologue/Type/Reflection.hs b/src/Prologue/Type/Reflection.hs
--- a/src/Prologue/Type/Reflection.hs
+++ b/src/Prologue/Type/Reflection.hs
@@ -26,15 +26,13 @@
 typeOfProxy :: forall proxy a. Typeable a => proxy a -> TypeRep a
 typeOfProxy _ = typeRep @a ; {-# INLINE typeOfProxy #-}
 
--- x :: SomeTypeRep
--- x = someTypeRep @Maybe
--- type family Typeables ls :: Constraint where
---     Typeables '[] = ()
---     Typeables (l ': ls) = (Typeable l, Typeables2 ls)
+type family Typeables ls :: Constraint where
+    Typeables '[] = ()
+    Typeables (l ': ls) = (Typeable l, Typeables ls)
 
-class Typeables (ls :: [*]) where someTypeReps :: [SomeTypeRep]
-instance (Typeable l, Typeables ls) => Typeables (l ': ls) where
+class TypeableMany (ls :: [*]) where someTypeReps :: [SomeTypeRep]
+instance (Typeable l, TypeableMany ls) => TypeableMany (l ': ls) where
     someTypeReps = someTypeRep @l : someTypeReps @ls ; {-# INLINE someTypeReps #-}
-instance Typeables '[] where
+instance TypeableMany '[] where
     someTypeReps = [] ; {-# INLINE someTypeReps #-}
 
