generic finger-tree structure (http://staff.city.ac.uk/~ross/papers/FingerTree.html)

#5Build failure with ghc 8.4

Add semigroup instances. See also: https://ghc.haskell.org/trac/ghc/wiki/Migration/8.4#SemigroupMonoidsuperclasses

Building library for hw-fingertree-strict-0.1.0.0..
[1 of 7] Compiling HaskellWorks.Data.FingerTree.Strict ( src/HaskellWorks/Data/FingerTree/Strict.hs, dist/build/HaskellWorks/Data/FingerTree/Strict.o )

src/HaskellWorks/Data/FingerTree/Strict.hs:97:10: error:
    • Could not deduce (Semigroup (FingerTree v a))
        arising from the superclasses of an instance declaration
      from the context: Measured v a
        bound by the instance declaration
        at src/HaskellWorks/Data/FingerTree/Strict.hs:97:10-48
    • In the instance declaration for ‘Monoid (FingerTree v a)’
   |
97 | instance Measured v a => Monoid (FingerTree v a) where
   |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^