diff --git a/keera-hails-reactivelenses.cabal b/keera-hails-reactivelenses.cabal
--- a/keera-hails-reactivelenses.cabal
+++ b/keera-hails-reactivelenses.cabal
@@ -7,10 +7,10 @@
 -- The package version. See the Haskell package versioning policy
 -- (http://www.haskell.org/haskellwiki/Package_versioning_policy) for
 -- standards guiding when and how versions should be incremented.
-Version:             0.0.0.1
+Version:             0.0.1
 
 -- A short (one-line) description of the package.
-Synopsis:            Haskell on Gtk rails - Lenses applied to Reactive Values
+Synopsis:            Reactive Haskell on Rails - Lenses applied to Reactive Values
 
 -- A longer description of the package.
 -- Description:
@@ -43,13 +43,12 @@
 -- Extra-source-files:
 
 -- Constraint on the version of Cabal needed to build this package.
-Cabal-version:       >=1.2
-
+Cabal-version:       >= 1.6
 
 Library
   hs-source-dirs: src/
 
-  ghc-options: -Wall -fno-warn-unused-do-bind -O2
+  ghc-options: -Wall -fno-warn-unused-do-bind
 
   -- Modules exported by the library.
   Exposed-modules: Data.ReactiveLens
@@ -57,3 +56,7 @@
   -- Packages needed in order to build this package.
   Build-depends: base >= 4 && < 5, lens, keera-hails-reactivevalues
 
+source-repository head
+    type: git
+    location: git://github.com/keera-studios/keera-hails
+    subdir: keera-hails-reactivelenses
diff --git a/src/Data/ReactiveLens.hs b/src/Data/ReactiveLens.hs
--- a/src/Data/ReactiveLens.hs
+++ b/src/Data/ReactiveLens.hs
@@ -1,6 +1,4 @@
-{-# LANGUAGE RankNTypes           #-}
-{-# LANGUAGE TypeSynonymInstances #-}
-{-# LANGUAGE MultiParamTypeClasses #-}
+{-# LANGUAGE Rank2Types #-}
 module Data.ReactiveLens where
 
 import Control.Lens
@@ -11,22 +9,25 @@
                  -> Lens' a b
                  -> ReactiveFieldReadWrite m b
 reactiveFromLens (ReactiveFieldReadWrite setter getter notifier) l =
-  ReactiveFieldReadWrite setter' getter' notifier
- where setter' v = setter.(set l v) =<< getter
-       getter'   = fmap (view l) getter
+   ReactiveFieldReadWrite setter' getter' notifier
+  where setter' v = setter.(set l v) =<< getter
+        getter'   = fmap (view l) getter
 
 -- I'd love to write this, but it's not possible because Haskell does not
 -- allow partially applied type synonyms anywhere.
 -- instance Monad m => GFunctor (ReactiveFieldReadWrite m) Lens' where
 --   gmap = reactiveFromLens
 
--- | Why use such a big function name? Well, there are very good
--- reasons. One is to get back to the Lens implementors, who
--- always choose names that are incredibly easy to pronounce.
--- Another is because it's based on <$> and <$$>.
+-- | An infix version of 'reactiveFromLense'.
+--
+-- DUE to a strange problem with GHC-7.10, I cannot use the following
+-- equivalente definition: 'flip' 'reactiveFromLens'.
 (<$$$>) :: (Monad m, Functor m)
         => Lens' a b -> ReactiveFieldReadWrite m a -> ReactiveFieldReadWrite m b
-(<$$$>) = flip reactiveFromLens
+(<$$$>) l (ReactiveFieldReadWrite setter getter notifier) =
+  ReactiveFieldReadWrite setter' getter' notifier
+ where setter' v = setter.(set l v) =<< getter
+       getter'   = fmap (view l) getter
 
 -- I think this bit would need monadic lenses
 -- reactiveLens :: Lens' a b -> Lens' (ReactiveFieldReadWrite m a) (ReactiveFieldReadWrite m b)
