diff --git a/Data/IORef/Tools.hs b/Data/IORef/Tools.hs
new file mode 100644
--- /dev/null
+++ b/Data/IORef/Tools.hs
@@ -0,0 +1,8 @@
+module Data.IORef.Tools(
+	atomicModifyIORef_
+) where
+
+import Data.IORef(IORef, atomicModifyIORef)
+
+atomicModifyIORef_ :: IORef a -> (a -> a) -> IO ()
+atomicModifyIORef_ ref f = atomicModifyIORef ref $ \x -> (f x, ())
diff --git a/yjtools.cabal b/yjtools.cabal
--- a/yjtools.cabal
+++ b/yjtools.cabal
@@ -1,5 +1,5 @@
 Name:		yjtools
-Version:	0.9.13
+Version:	0.9.14
 Cabal-Version:	>= 1.2
 Build-Type:	Simple
 License:	LGPL
@@ -21,4 +21,4 @@
   Build-Depends:	base>3&&<5
   Exposed-Modules:	Control.Monad.Tools, Control.Applicative.Tools,
     Data.List.Tools, Data.Function.Tools,
-    Data.Bool.Tools
+    Data.Bool.Tools, Data.IORef.Tools
