diff --git a/music-pitch-literal.cabal b/music-pitch-literal.cabal
--- a/music-pitch-literal.cabal
+++ b/music-pitch-literal.cabal
@@ -1,6 +1,6 @@
 
 name:                   music-pitch-literal
-version:                1.6.2
+version:                1.7
 author:                 Hans Hoglund
 maintainer:             Hans Hoglund
 license:                BSD3
diff --git a/src/Music/Pitch/Alterable.hs b/src/Music/Pitch/Alterable.hs
--- a/src/Music/Pitch/Alterable.hs
+++ b/src/Music/Pitch/Alterable.hs
@@ -54,3 +54,11 @@
 instance Integral a => Alterable (Ratio a) where
     sharpen = (+ 1)
     flatten = (subtract 1)
+
+instance Alterable a => Alterable [a] where
+    sharpen = fmap sharpen
+    flatten = fmap flatten
+
+instance Alterable a => Alterable (b, a) where
+    sharpen = fmap sharpen
+    flatten = fmap flatten
diff --git a/src/Music/Pitch/Augmentable.hs b/src/Music/Pitch/Augmentable.hs
--- a/src/Music/Pitch/Augmentable.hs
+++ b/src/Music/Pitch/Augmentable.hs
@@ -50,3 +50,12 @@
 instance Integral a => Augmentable (Ratio a) where
     augment  = (+ 1)
     diminish = (subtract 1)
+
+instance Augmentable a => Augmentable [a] where
+    augment = fmap augment
+    diminish = fmap diminish
+
+instance Augmentable a => Augmentable (b, a) where
+    augment = fmap augment
+    diminish = fmap diminish
+
diff --git a/src/Music/Pitch/Literal/Interval.hs b/src/Music/Pitch/Literal/Interval.hs
--- a/src/Music/Pitch/Literal/Interval.hs
+++ b/src/Music/Pitch/Literal/Interval.hs
@@ -61,6 +61,12 @@
 instance IsInterval a => IsInterval (Last a) where
     fromInterval = pure . fromInterval
 
+instance IsInterval a => IsInterval [a] where
+    fromInterval = pure . fromInterval
+
+instance (Monoid b, IsInterval a) => IsInterval (b, a) where
+    fromInterval = pure . fromInterval
+
 instance IsInterval Double where
     fromInterval = fromIntegral . asInteger . fromInterval
 
diff --git a/src/Music/Pitch/Literal/Pitch.hs b/src/Music/Pitch/Literal/Pitch.hs
--- a/src/Music/Pitch/Literal/Pitch.hs
+++ b/src/Music/Pitch/Literal/Pitch.hs
@@ -75,6 +75,12 @@
 instance IsPitch a => IsPitch (Last a) where
     fromPitch = pure . fromPitch
 
+instance IsPitch a => IsPitch [a] where
+    fromPitch = pure . fromPitch
+
+instance (Monoid b, IsPitch a) => IsPitch (b, a) where
+    fromPitch = pure . fromPitch
+
 instance IsPitch Double where
     fromPitch (PitchL (pc, sem, oct)) = fromIntegral $ semitones sem + diatonic pc + oct * 12
         where
