diff --git a/Lastik.cabal b/Lastik.cabal
--- a/Lastik.cabal
+++ b/Lastik.cabal
@@ -1,5 +1,5 @@
 Name:               Lastik
-Version:            0.6.2
+Version:            0.6.3
 License:            BSD3
 License-File:       LICENSE
 Author:             Tony Morris <code@tmorris.net>
diff --git a/System/Build/Runner.hs b/System/Build/Runner.hs
--- a/System/Build/Runner.hs
+++ b/System/Build/Runner.hs
@@ -47,6 +47,8 @@
                then g
                else return e
 
+infixl 3 >--
+
 -- | Executes the second action only if the first produces @ExitSuccess@.
 (>==) :: (Monad m) =>
          m ExitCode ->
@@ -55,6 +57,7 @@
 p >== q = do e <- p
              when (e == ExitSuccess) q
 
+infixl 3 >==
 
 -- | Transform the list of file paths before executing the runner.
 pathTransform :: ([FilePath] -> IO [FilePath]) ->
@@ -76,6 +79,8 @@
 c !!! z = do s <- command c
              system (s ++ ' ' : c =>> z)
 
+infixl 7 !!!
+
 -- | Create the output target directory then execute the compile result as a system command.
 (>->) :: (OutputDirectory c, Command c, CompilePaths c) =>
          RunnerExit c
@@ -84,6 +89,8 @@
   where
   mkdirectory = mapM_ (createDirectoryIfMissing True) . maybeToList
 
+infixl 7 >->
+
 -- | A runner that recursively searches the output target for files that match a given extension and compiles them as a system command.
 (->-) :: (OutputDirectory c, Extensions c, CompilePaths c, Command c) =>
           RunnerExit c
@@ -96,6 +103,8 @@
          -> r     -- ^ The value with the given file path added.
 v +>> k = setReference (v : getReference k) k
 
+infixl 7 +>>
+
 -- | Adds the given file paths to the reference target of the given value.
 (++>>) :: (OutputReferenceGet r, OutputReferenceSet r) =>
           [FilePath] -- ^ The file paths to add.
@@ -103,6 +112,8 @@
           -> r       -- ^ The value with the given file paths added.
 v ++>> k = setReference (v ++ getReference k) k
 
+infixl 7 ++>>
+
 -- | Adds the (potential) output target of the given value to the output target of the given value.
 (>===>) :: (OutputDirectory o, OutputReferenceGet r, OutputReferenceSet r) =>
            o    -- ^ The value with an output target value to add.
@@ -111,9 +122,13 @@
 v >===> w = case outdir v of Nothing -> w
                              Just y -> y +>> w
 
+infixl 3 >===>
+
 -- | Adds the (potential) output target and output references of the given value to the output target of the given value.
 (>=>=>) :: (OutputDirectory o, OutputReferenceGet o, OutputReferenceGet r, OutputReferenceSet r) =>
            o    -- ^ The value with an output target and output references to add.
            -> r -- ^ The value to add the output target and output references to.
            -> r -- ^ The value after the output target has been added.
 v >=>=> w = v >===> (getReference v ++>> w)
+
+infixl 3 >=>=>
