diff --git a/Data/Profunctor/Composition.hs b/Data/Profunctor/Composition.hs
--- a/Data/Profunctor/Composition.hs
+++ b/Data/Profunctor/Composition.hs
@@ -1,16 +1,32 @@
 {-# LANGUAGE GADTs #-}
 module Data.Profunctor.Composition 
-  ( Compose(..)
+  ( Procompose(..)
+  , proidl
+  , proidr
+  , coproidl
+  , coproidr
   ) where
 
 import Data.Profunctor
 
-data Compose f g d c where
-  Compose :: f d a -> g a c -> Compose f g d c 
+data Procompose f g d c where
+  Procompose :: f d a -> g a c -> Procompose f g d c 
 
-instance (Profunctor f, Profunctor g) => Profunctor (Compose f g) where
-  lmap k (Compose f g) = Compose (lmap k f) g
-  rmap k (Compose f g) = Compose f (rmap k g)
+instance (Profunctor f, Profunctor g) => Profunctor (Procompose f g) where
+  lmap k (Procompose f g) = Procompose (lmap k f) g
+  rmap k (Procompose f g) = Procompose f (rmap k g)
 
-instance Profunctor g => Functor (Compose f g a) where
-  fmap k (Compose f g) = Compose f (rmap k g)
+instance Profunctor g => Functor (Procompose f g a) where
+  fmap k (Procompose f g) = Procompose f (rmap k g)
+
+proidl :: Profunctor g => Procompose (->) g d c -> g d c 
+proidl (Procompose f g) = lmap f g
+
+proidr :: Profunctor f => Procompose f (->) d c -> f d c
+proidr (Procompose f g) = rmap g f
+
+coproidl :: g d c -> Procompose (->) g d c
+coproidl = Procompose id
+
+coproidr :: f d c -> Procompose f (->) d c
+coproidr g = Procompose g id
diff --git a/Data/Profunctor/Trace.hs b/Data/Profunctor/Trace.hs
new file mode 100644
--- /dev/null
+++ b/Data/Profunctor/Trace.hs
@@ -0,0 +1,8 @@
+{-# LANGUAGE GADTs #-}
+module Data.Profunctor.Trace
+  ( Trace(..)
+  ) where
+
+-- | Coend of profunctor from Hask -> Hask
+data Trace f where
+  Trace :: f a a -> Trace f
diff --git a/profunctor-extras.cabal b/profunctor-extras.cabal
--- a/profunctor-extras.cabal
+++ b/profunctor-extras.cabal
@@ -1,6 +1,6 @@
 name:          profunctor-extras
 category:      Control, Categories
-version:       0.2
+version:       0.3.0
 license:       BSD3
 cabal-version: >= 1.6
 license-file:  LICENSE
@@ -28,5 +28,6 @@
   exposed-modules:
     Data.Profunctor.Composition
     Data.Profunctor.Collage
+    Data.Profunctor.Trace
 
   ghc-options:      -Wall 
