diff --git a/Control/Categorical/Functor.hs b/Control/Categorical/Functor.hs
--- a/Control/Categorical/Functor.hs
+++ b/Control/Categorical/Functor.hs
@@ -1,4 +1,4 @@
-{-# LANGUAGE ConstraintKinds, MultiParamTypeClasses, FunctionalDependencies, FlexibleContexts, UndecidableInstances, FlexibleInstances, DefaultSignatures #-}
+{-# LANGUAGE MultiParamTypeClasses, FunctionalDependencies, FlexibleContexts, UndecidableInstances, FlexibleInstances, DefaultSignatures #-}
 -------------------------------------------------------------------------------------------
 -- |
 -- Module      : Control.Categorical.Functor
@@ -117,4 +117,5 @@
 instance Functor IO (->) (->) where
   fmap = Prelude.fmap
 
-type Endofunctor f a = Functor f a a
+class Functor f a a => Endofunctor f a
+instance Functor f a a => Endofunctor f a
diff --git a/categories.cabal b/categories.cabal
--- a/categories.cabal
+++ b/categories.cabal
@@ -1,6 +1,6 @@
 name:          categories
 category:      Control
-version:       1.0.0.1
+version:       1.0.1
 license:       BSD3
 cabal-version: >= 1.10
 license-file:  LICENSE
