diff --git a/src/Quasar/Resources.hs b/src/Quasar/Resources.hs
index 888ebc5fd7231467bfa1cb2492a9f71036ed742a..32c1ef1c90d165162e198afd7b84f3ba89221df9 100644
--- a/src/Quasar/Resources.hs
+++ b/src/Quasar/Resources.hs
@@ -20,8 +20,8 @@ module Quasar.Resources (
   -- * Types to implement resources
   -- ** Disposer
   Disposer,
-  newIODisposer,
-  newSTMDisposer,
+  newIODisposerSTM,
+  newSTMDisposerSTM,
 
   -- ** Resource manager
   ResourceManager,
@@ -42,11 +42,11 @@ import Quasar.Resources.Disposer
 import Quasar.Utils.ShortIO
 
 
-newIODisposer :: IO () -> TIOWorker -> ExceptionChannel -> STM Disposer
-newIODisposer fn worker exChan = newPrimitiveDisposer (forkAsyncShortIO fn exChan) worker exChan
+newIODisposerSTM :: IO () -> TIOWorker -> ExceptionChannel -> STM Disposer
+newIODisposerSTM fn worker exChan = newPrimitiveDisposer (forkAsyncShortIO fn exChan) worker exChan
 
-newSTMDisposer :: STM () -> TIOWorker -> ExceptionChannel -> STM Disposer
-newSTMDisposer fn worker exChan = newPrimitiveDisposer disposeFn worker exChan
+newSTMDisposerSTM :: STM () -> TIOWorker -> ExceptionChannel -> STM Disposer
+newSTMDisposerSTM fn worker exChan = newPrimitiveDisposer disposeFn worker exChan
   where
     disposeFn :: ShortIO (Awaitable ())
     disposeFn = unsafeShortIO $ atomically $
@@ -64,14 +64,14 @@ registerDisposeAction fn = do
   worker <- askIOWorker
   exChan <- askExceptionChannel
   rm <- askResourceManager
-  ensureSTM $ attachResource rm =<< newIODisposer fn worker exChan
+  ensureSTM $ attachResource rm =<< newIODisposerSTM fn worker exChan
 
 registerDisposeTransaction :: MonadQuasar m => STM () -> m ()
 registerDisposeTransaction fn = do
   worker <- askIOWorker
   exChan <- askExceptionChannel
   rm <- askResourceManager
-  ensureSTM $ attachResource rm =<< newSTMDisposer fn worker exChan
+  ensureSTM $ attachResource rm =<< newSTMDisposerSTM fn worker exChan
 
 registerNewResource :: forall a m. (Resource a, MonadQuasar m) => m a -> m a
 registerNewResource fn = do
diff --git a/src/Quasar/Timer.hs b/src/Quasar/Timer.hs
index 133b03a0f8d8c1a036ba505b73c44f75f958e850..e0d6973ff3264110037b596990f3a069bcfec59c 100644
--- a/src/Quasar/Timer.hs
+++ b/src/Quasar/Timer.hs
@@ -180,7 +180,7 @@ newUnmanagedTimer scheduler time = liftIO do
   key <- newUnique
   completed <- newAsyncVar
   atomically do
-    disposer <- newSTMDisposer (disposeFn completed) (ioWorker scheduler) (exceptionChannel scheduler)
+    disposer <- newSTMDisposerSTM (disposeFn completed) (ioWorker scheduler) (exceptionChannel scheduler)
     let timer = Timer { key, time, completed, disposer, scheduler }
     tryTakeTMVar (heap scheduler) >>= \case
       Just timers -> putTMVar (heap scheduler) (insert timer timers)