diff --git a/Data/NonBlocking/LockFree/Treiber.hs b/Data/NonBlocking/LockFree/Treiber.hs
--- a/Data/NonBlocking/LockFree/Treiber.hs
+++ b/Data/NonBlocking/LockFree/Treiber.hs
@@ -8,7 +8,7 @@
 
 An implementation of Treiber stacks, a lock free stack. Works with any monad that has atomically modificable references.
 -}
-module Data.NonBlocking.LockFree.Treiber(TreiberStack(), newTreiberStack, pushTreiberStack, popTreiberStack) where
+module Data.NonBlocking.LockFree.Treiber(TreiberStack(), TreiberStackIO, TreiberStackSTM, newTreiberStack, pushTreiberStack, popTreiberStack) where
 
 import Control.Concurrent.STM (STM())
 import Control.Concurrent.STM.TVar (TVar())
diff --git a/Treiber.cabal b/Treiber.cabal
--- a/Treiber.cabal
+++ b/Treiber.cabal
@@ -1,5 +1,5 @@
 Name:		Treiber
-Version:	0.0.2
+Version:	0.0.3
 Cabal-Version:  >= 1.2
 License:	BSD3
 Author:		Julian Sutherland
@@ -8,7 +8,7 @@
 Synopsis:	Lock free Treiber stack
 Build-Type:     Simple
 Maintainer:     Julian Sutherland (julian.sutherland10@imperial.ac.uk)
-Description:    An implementation of Treiber stacks, a lock free stack. Works with any monad that has atomically modificable references.
+Description:    An implementation of Treiber stacks, a lock free stack. Works with any monad that has atomically modificable references. Removed debug code accidentally left in in version 0.0.1 and added specializations of the TreiberStack data structure to the IO and STM monads (forgotten to export in 0.0.2).
 License-file:   LICENSE
 
 Library
