Parsing and unambiguously representing musical chords. https://github.com/chordify/HarmTrace-Base

Latest on Hackage:

This package is not currently in any snapshots. If you're interested in using it, we recommend adding it to Stackage Nightly. Doing so will make builds more reliable, and allow stackage.org to host generated Haddocks.

LGPL-3 licensed by W. Bas de Haas, Jeroen Bransen and Jose Pedro Magalhaes


HarmTrace Base: Parsing and unambiguously representing musical chords

HarmTrace base is a library for representing musical chords. It is used a small number of programs. A Chordify we build our back-end in Haskell and the HarmTrace-Base library is used to represent, store, manipulate, print chords etc. Basically the library offers a set of types and classes for representing musical chords in an unambiguous manner as presented in [1].

[1] Christopher Harte, Mark Sandler and Samer Abdallah (2005), "Symbolic representation of musical chords: a proposed syntax for text annotations"
In: Proceedings of 6th International Conference on Music Information Retrieval (pp. 66-71).


cabal install


stack init and stack build


Changelog HarmTrace-Base has been completely rewritten and is not compatible with software that depends on HarmTrace-Base < 1.4. Lot's of minor updates.

  • More functions to represent musical time at the beat level
  • Stricktly adhere to the Harte shortands
  • Add the option to print chords with inversions represented as notes instead of intervals
  • Minor improvements
Used by 3 packages:
comments powered byDisqus