diff --git a/pointfree-fancy.cabal b/pointfree-fancy.cabal
--- a/pointfree-fancy.cabal
+++ b/pointfree-fancy.cabal
@@ -1,12 +1,12 @@
 cabal-version: 2.0
 name: pointfree-fancy
-version: 1.1.1.11
+version: 1.1.1.12
 license: BSD3
 license-file: LICENSE
 maintainer: Vanessa McHale <vamchale@gmail.com>
 author: Thomas Jäger
-tested-with: ghc ==8.0.2 ghc ==8.2.2 ghc ==8.4.3 ghc ==7.10.3
-             ghc ==8.6.1
+tested-with: ghc ==8.0.2 ghc ==8.2.2 ghc ==8.4.4 ghc ==7.10.3
+             ghc ==8.6.4
 synopsis: Tool for refactoring expressions into pointfree form
 description:
     The pointfree tool is a standalone command-line version of the pl
@@ -48,7 +48,7 @@
         base >=4.8 && <5.0,
         array >=0.3 && <0.6,
         containers >=0.4 && <0.7,
-        haskell-src-exts >=1.18 && <1.21,
+        haskell-src-exts >=1.20 && <1.21,
         transformers <0.6
 
 executable pointfree
@@ -69,4 +69,4 @@
         base <5,
         pointfree-internal -any,
         HUnit >=1.1 && <1.7,
-        QuickCheck >=2.1 && <2.11
+        QuickCheck >=2.1 && <2.12
diff --git a/src/Plugin/Pl/Rules.hs b/src/Plugin/Pl/Rules.hs
--- a/src/Plugin/Pl/Rules.hs
+++ b/src/Plugin/Pl/Rules.hs
@@ -164,7 +164,7 @@
   sndE, dollarE, constE, uncurryE, curryE, compE, headE, tailE, sE, commaE,
   fixE, foldl1E, notE, equalsE, nequalsE, plusE, multE, zeroE, oneE, lengthE,
   sumE, productE, concatE, concatMapE, joinE, mapE, fmapE, fmapIE, subtractE,
-  minusE, liftME, apE, liftM2E, seqME, zipE, zipWithE, onE, oedipusE, comp2E,
+  minusE, liftME, apE, liftM2E, seqME, zipE, zipWithE, onE, oedipusE, oedipus2E, comp2E,
   crossE, firstE, secondE, andE, orE, allE, anyE, returnE, fishE, mfishE,
   needleE, mneedleE :: MExpr
 idE        = Quote $ Var Pref "id"
@@ -174,8 +174,8 @@
 comp2E     = Quote $ Var Inf ".*"
 comp3E     = Quote $ Var Inf ".**"
 eyeE       = Quote $ Var Inf "<&>"
-oedipusE   = Quote $ Var Inf "-.*"
-oedipus2E  = Quote $ Var Inf "-.**"
+oedipusE   = Quote $ Var Inf ".@"
+oedipus2E  = Quote $ Var Inf ".@@"
 onE        = Quote $ Var Pref "on"
 ampersandE = Quote $ Var Inf "&"
 sE         = Quote $ Var Pref "ap"
@@ -249,7 +249,6 @@
 infixr 8 `c2`
 infixr 8 `o`
 
-
 collapseLists :: Expr -> Maybe Expr
 collapseLists (Var _ "++" `App` e1 `App` e2)
   | (xs,x) <- getList e1, x==nil,
@@ -311,10 +310,10 @@
   -- (f .** g) x y z -> f (g x y z)
   rr0 (\f g x y z -> (f `c3` g) `a` x `a` y `a` z)
       (\f g x y z -> f `a` (g `a` x `a` y `a` z)),
-  -- (f -.* g) x y -> f x (g y)
+  -- (f .@ g) x y -> f x (g y)
   rr0  (\f g x y -> (f `o` g) `a` x `a` y)
        (\f g x y -> f `a` x `a` (g `a` y)),
-  -- (f -.** g) -> f x y (g z)
+  -- (f .@@ g) -> f x y (g z)
   rr0 (\f g x y z -> (f `o2` g) `a` x `a` y `a` z)
       (\f g x y z -> f `a` x `a` y `a` (g `a` z)),
   -- x & f -> f x
@@ -615,7 +614,7 @@
   rr (flipE `a` compE)
      eyeE,
 
-  -- (<&>) -.* (.*) -> (~@~)
+  -- (<&>) .@ (.*) -> (~@~)
   rr (\f g -> (oedipusE `a` eyeE `a` comp2E) `a` f `a` g)
      (\f g -> needleE `a` f `a` g),
 
@@ -627,7 +626,7 @@
   rr (\x -> ampersandE `a` x)
      (\x -> dollarE `a` x),
 
-  -- f -.* (g . f) -> on g f
+  -- f .@ (g . f) -> on g f
   Hard $
   rr (\f g -> oedipusE `a` f `a` (compE `a` g `a` f))
      (\f g -> onE `a` g `a` f),
@@ -696,12 +695,12 @@
   rr  (\f -> apE `a` f `a` idE)
       (\f -> joinE `a` f),
 
-  -- flip flip f . ((.) .* g) --> f -.** g
+  -- flip flip f . ((.) .* g) --> f .@@ g
   Hard $
   rr (\f g -> (flipE `a` flipE `a` f `c` (compE `c2` g)))
      (\f g -> oedipus2E `a` f `a` g),
 
-  -- (. f) . g --> (f -.* g)
+  -- (. f) . g --> (f .@ g)
   Hard $
   rr (\f g -> (flipE `a` compE `a` f) `c` g)
      (\f g -> oedipusE `a` f `a` g),
@@ -715,7 +714,7 @@
   rr (\p q -> seqME `a` p `a` q)
      (\p q -> extE `a` (constE `a` q) `a` p),
 
-  -- ap (f -.* ((,) . f . fst)) snd --> f (***) f
+  -- ap (f .@ ((,) . f . fst)) snd --> f (***) f
   Hard $
   rr (\f -> apE `a` (f `o` (commaE `c` f `c` fstE)) `a` sndE)
      (\f -> joinE `a` crossE `a` f),
@@ -742,7 +741,7 @@
     rr (\f g -> flipE `a` flipE `a` idE `c` (apE `c2` (f `c3` g)))
        (\f g -> mfishE `a` f `a` g),
 
-  -- (`ap` snd) . (fst -.* (flip =<< (.) .* ((,) .))) --> join (***)
+  -- (`ap` snd) . (fst .@ (flip =<< (.) .* ((,) .))) --> join (***)
   -- Hard $
   rr ((flipE `a` apE `a` sndE) `c` (fstE `o` (extE `a` flipE `a` (compE `c2` (compE `a` commaE)))))
      (joinE `a` crossE),
diff --git a/src/Plugin/Pl/Transform.hs b/src/Plugin/Pl/Transform.hs
--- a/src/Plugin/Pl/Transform.hs
+++ b/src/Plugin/Pl/Transform.hs
@@ -1,8 +1,6 @@
-{-# LANGUAGE FlexibleInstances #-}
-{-# LANGUAGE PatternGuards     #-}
-module Plugin.Pl.Transform (
-    transform,
-  ) where
+{-# LANGUAGE PatternGuards #-}
+
+module Plugin.Pl.Transform ( transform ) where
 
 import           Control.Monad.Trans.State
 import           Data.Graph                (flattenSCC, flattenSCCs,
diff --git a/test/Test.hs b/test/Test.hs
--- a/test/Test.hs
+++ b/test/Test.hs
@@ -115,15 +115,15 @@
   unitTest "fmap . const" ["(<$)"],
   unitTest "(.) . const" ["(<$)"],
   -- unitTest "\\x y -> h (f x) y" ["(argument %~ f) h"],
-  -- unitTest "(mapped.argument %~ f) h x y" ["f -.* h"],
+  -- unitTest "(mapped.argument %~ f) h x y" ["f .@ h"],
   -- unitTest "fmap (<> a)" ["mapping <>= a"],
   unitTest "and . map f" ["all f"],
   unitTest "(f =<<) . g" ["f <=< g"],
   unitTest "or . map f" ["any f"],
   unitTest "\\x y -> f (x == y)"  ["f .* (==)"],
   unitTest "\\x y z -> f (predicate x y z)"  ["f .** predicate"],
-  unitTest "\\x y -> x == f y" [ "f -.* (==)" ],
-  unitTest "\\x y z -> predicate x y (f z)" [ "f -.** predicate" ],
+  unitTest "\\x y -> x == f y" [ "f .@ (==)" ],
+  unitTest "\\x y z -> predicate x y (f z)" [ "f .@@ predicate" ],
   unitTest "\\x f -> f $ x" [ "(&)" ],
   unitTest "return ()" ["return ()"],
   unitTest "f (fix f)" ["fix f"],
