diff --git a/Changes.md b/Changes.md
--- a/Changes.md
+++ b/Changes.md
@@ -15,4 +15,5 @@
  *  uniform singular names for modules
 
     data/Controls -> data/Controller
+
     data/Chords -> data/Chord
diff --git a/live-sequencer.cabal b/live-sequencer.cabal
--- a/live-sequencer.cabal
+++ b/live-sequencer.cabal
@@ -1,5 +1,5 @@
 Name:          live-sequencer
-Version:       0.0.6.1
+Version:       0.0.6.2
 Author:        Henning Thielemann and Johannes Waldmann
 Maintainer:    Henning Thielemann <haskell@henning-thielemann.de>, Johannes Waldmann <waldmann@imn.htwk-leipzig.de>
 Category:      Sound, Music, GUI
@@ -71,7 +71,7 @@
   Location: https://hub.darcs.net/thielema/livesequencer
 
 Source-Repository this
-  Tag: 0.0.6.1
+  Tag: 0.0.6.2
   Type: darcs
   Location: https://hub.darcs.net/thielema/livesequencer
 
@@ -168,9 +168,10 @@
     strict >=0.3.2 && <0.4,
     utility-ht >=0.0.8 && <0.1,
     non-empty >=0.2 && <0.4,
+    semigroups >=0.1 && <1.0,
     containers >=0.3 && <0.6,
     bytestring >=0.9 && <0.11,
-    process >=1.0 && <1.5,
+    process >=1.0 && <1.7,
     pathtype >=0.8.1 && <0.9,
     base >=4.2 && <5
 
@@ -193,10 +194,11 @@
       data-accessor >=0.2.1 && <0.3,
       strict >=0.3.2 && <0.4,
       non-empty >=0.2 && <0.4,
+      semigroups >=0.1 && <1.0,
       utility-ht >=0.0.8 && <0.1,
       containers >=0.3 && <0.6,
       bytestring >=0.9 && <0.11,
-      process >=1.0 && <1.5,
+      process >=1.0 && <1.7,
       pathtype >=0.8.1 && <0.9,
       base >=4.2 && <5
   Else
diff --git a/src/Time.hs b/src/Time.hs
--- a/src/Time.hs
+++ b/src/Time.hs
@@ -15,6 +15,7 @@
 import Control.Applicative ( Const (Const, getConst) )
 
 import qualified Data.Monoid as Mn
+import qualified Data.Semigroup as Sg
 
 
 newtype Time factor a = Time a
@@ -24,9 +25,12 @@
     fmap f (Time a) = Time (f a)
 
 
+instance (Num a) => Sg.Semigroup (Time factor a) where
+    Time x <> Time y = Time (x+y)
+
 instance (Num a) => Mn.Monoid (Time factor a) where
     mempty = Time 0
-    mappend (Time x) (Time y) = Time (x+y)
+    mappend = (Sg.<>)
 
 sub :: Num a => Time factor a -> Time factor a -> Time factor a
 sub (Time x) (Time y) = Time (x-y)
diff --git a/src/Type.hs b/src/Type.hs
--- a/src/Type.hs
+++ b/src/Type.hs
@@ -72,6 +72,7 @@
 table :: (ParserRange range) => Expr.OperatorTable Char st (Term range)
 table = map ( map binary ) operators
 
+-- duplicate to Term.binary, however, lexer and operatorLetter are different
 binary ::
     (ParserRange range) =>
     (String, Assoc) -> Expr.Operator Char st (Term range)
