hmt-0.15: Haskell Music Theory

Safe Haskell | Safe
Language | Haskell98

Music.Theory.Interval.Spelling

Description

Spelling rules for `Interval` values.

Synopsis

- i_to_interval :: Int -> Interval
- interval_simplify :: Interval -> Interval

# Documentation

i_to_interval :: Int -> Interval Source #

Simplest spelling for semitone intervals. This is ambiguous for `6` which could be either aug.4 or dim.5.

    i_to_interval 6 == Interval Fourth Augmented LT 0
    map i_to_interval [0..11]

interval_simplify :: Interval -> Interval Source #

Perform some interval simplifications. For non-tonal music some spellings are poor, ie. (f,g#).

    interval_simplify (Interval Second Augmented LT 0) == Interval Third Minor LT 0
    interval_simplify (Interval Seventh Augmented GT 0) == Interval Unison Perfect GT 1