diff --git a/Data/Tuple/Tools.hs b/Data/Tuple/Tools.hs
new file mode 100644
--- /dev/null
+++ b/Data/Tuple/Tools.hs
@@ -0,0 +1,6 @@
+module Data.Tuple.Tools (
+	rotate
+) where
+
+rotate :: Floating a => a -> (a, a) -> (a, a)
+rotate rad (x, y) = (x * cos rad - y * sin rad, x * sin rad + y * cos rad)
diff --git a/yjtools.cabal b/yjtools.cabal
--- a/yjtools.cabal
+++ b/yjtools.cabal
@@ -1,5 +1,5 @@
 Name:		yjtools
-Version:	0.9.14
+Version:	0.9.15
 Cabal-Version:	>= 1.2
 Build-Type:	Simple
 License:	LGPL
@@ -22,3 +22,5 @@
   Exposed-Modules:	Control.Monad.Tools, Control.Applicative.Tools,
     Data.List.Tools, Data.Function.Tools,
     Data.Bool.Tools, Data.IORef.Tools
+    Data.Tuple.Tools
+  Ghc-Options:		-Wall
