diff --git a/Control/Arrow/Unicode.hs b/Control/Arrow/Unicode.hs
--- a/Control/Arrow/Unicode.hs
+++ b/Control/Arrow/Unicode.hs
@@ -1,4 +1,4 @@
-{-# LANGUAGE NoImplicitPrelude, UnicodeSyntax, TypeOperators #-}
+{-# LANGUAGE CPP, NoImplicitPrelude, UnicodeSyntax, TypeOperators #-}
 
 {-|
 Module     : Control.Arrow.Unicode
@@ -7,7 +7,15 @@
 Maintainer : Roel van Dijk <vandijk.roel@gmail.com>
 -}
 
-module Control.Arrow.Unicode ( (⋙), (⋘), (⁂), (⧻), (⫴) ) where
+module Control.Arrow.Unicode
+    ( (⋙)
+    , (⋘)
+#if defined(__GLASGOW_HASKELL__) && __GLASGOW_HASKELL__ > 608
+    , (⁂)
+#endif
+    , (⧻)
+    , (⫴)
+    ) where
 
 
 -------------------------------------------------------------------------------
@@ -18,23 +26,33 @@
 import Control.Arrow ( Arrow, (***), ArrowChoice, (+++), (|||) )
 import Data.Either   ( Either )
 
+#if MIN_VERSION_base(3,0,3)
 -- from base-unicode-symbols
 import Control.Category.Unicode ( (⋙), (⋘) )
+#else
+import Control.Arrow ( (>>>), (<<<) )
+#endif
 
 
 -------------------------------------------------------------------------------
 -- Fixities
 -------------------------------------------------------------------------------
 
+#if defined(__GLASGOW_HASKELL__) && __GLASGOW_HASKELL__ > 608
 infixr 3 ⁂
+#endif
 infixr 2 ⧻
 infixr 2 ⫴
+#if !MIN_VERSION_base(3,0,3)
+infixr 1 ⋙, ⋘
+#endif
 
 
 -------------------------------------------------------------------------------
 -- Symbols
 -------------------------------------------------------------------------------
 
+#if defined(__GLASGOW_HASKELL__) && __GLASGOW_HASKELL__ > 608
 {-|
 (&#x2042;) = ('***')
 
@@ -42,6 +60,7 @@
 -}
 (⁂) ∷ Arrow (⇝) ⇒ (α ⇝ β) → (α' ⇝ β') → (α, α') ⇝ (β, β')
 (⁂) = (***)
+#endif
 
 {-|
 (&#x29FB;) = ('+++')
@@ -58,3 +77,21 @@
 -}
 (⫴) ∷ ArrowChoice (⇝) ⇒ (α ⇝ δ) → (β ⇝ δ) → (Either α β ⇝ δ)
 (⫴) = (|||)
+
+#if !MIN_VERSION_base(3,0,3)
+{-|
+(&#x22D9;) = ('>>>')
+
+U+22D9, VERY MUCH GREATER-THAN
+-}
+(⋙) ∷ Arrow (⇝) ⇒ (α ⇝ β) → (β ⇝ γ) → (α ⇝ γ)
+(⋙) = (>>>)
+
+{-|
+(&#x22D8;) = ('<<<')
+
+U+22D8, VERY MUCH LESS-THAN
+-}
+(⋘) ∷ Arrow (⇝) ⇒ (β ⇝ γ) → (α ⇝ β) → (α ⇝ γ)
+(⋘) = (<<<)
+#endif
diff --git a/LICENSE b/LICENSE
--- a/LICENSE
+++ b/LICENSE
@@ -1,4 +1,4 @@
-Copyright (c) 2009–2010 Roel van Dijk
+Copyright 2009–2011 Roel van Dijk
 
 All rights reserved.
 
diff --git a/base-unicode-symbols.cabal b/base-unicode-symbols.cabal
--- a/base-unicode-symbols.cabal
+++ b/base-unicode-symbols.cabal
@@ -1,11 +1,12 @@
 name:          base-unicode-symbols
-version:       0.2.1.1
+version:       0.2.1.2
 cabal-version: >=1.6
 build-type:    Simple
 stability:     provisional
+tested-with:   GHC ==6.8.1, GHC ==6.10.1, GHC ==7.0.1, GHC ==7.0.3
 author:        Roel van Dijk <vandijk.roel@gmail.com>
 maintainer:    Roel van Dijk <vandijk.roel@gmail.com>
-copyright:     (c) 2009–2010 Roel van Dijk <vandijk.roel@gmail.com>
+copyright:     2009–2011 Roel van Dijk <vandijk.roel@gmail.com>
 license:       BSD3
 license-file:  LICENSE
 category:
@@ -21,18 +22,9 @@
   .
   For further Unicode goodness you can enable the @UnicodeSyntax@
   language extension \[1\]. This extension enables Unicode characters
-  to be used to stand for certain ASCII character sequences. For GHC
-  6.12.3 it provides the following alternatives:
-  .
-  * &#x2237; (U+2237, PROPORTION) instead of @::@
-  .
-  * &#x21D2; (U+21D2, RIGHTWARDS DOUBLE ARROW) instead of @=>@
-  .
-  * &#x2200; (U+2200, FOR ALL) instead of @forall@
-  .
-  * &#x2192; (U+2192, RIGHTWARDS ARROW) instead of @->@
-  .
-  * &#x2190; (U+2190, LEFTWARDS ARROW) instead of @<-@
+  to be used to stand for certain ASCII character sequences,
+  i.e. &#x2192; instead of @->@, &#x2200; instead of @forall@ and many
+  others.
   .
   Original idea by P&#xE9;ter Divi&#xE1;nszky.
   .
@@ -42,10 +34,18 @@
   type:     darcs
   location: http://code.haskell.org/~roelvandijk/code/base-unicode-symbols
 
+flag old-base
+  description: Support for base < 3.0.3.1
+  default: False
+
 library
+  if !flag(old-base)
+    build-depends: base >= 3.0 && < 4.4
+  else
+    build-depends: base >= 3.0.3.1 && < 4.4
+    exposed-modules: Control.Category.Unicode
   exposed-modules: Control.Applicative.Unicode
                  , Control.Arrow.Unicode
-                 , Control.Category.Unicode
                  , Control.Monad.Unicode
                  , Data.Bool.Unicode
                  , Data.Eq.Unicode
@@ -55,4 +55,4 @@
                  , Data.Monoid.Unicode
                  , Data.Ord.Unicode
                  , Prelude.Unicode
-  build-depends: base >= 3.0.3.1 && < 4.4
+
