Safe Haskell | None |
---|---|
Language | Haskell2010 |
Scales and chords.
- data Mode a
- modeFromSteps :: [Diff a] -> Diff a -> Mode a
- modeIntervals :: Lens' (Mode a) [Diff a]
- modeRepeat :: Lens' (Mode a) (Diff a)
- data Scale a
- scaleTonic :: Lens' (Scale a) a
- scaleMode :: Lens' (Scale a) (Mode a)
- leadingInterval :: AffineSpace a => Mode a -> Diff a
- invertMode :: AffineSpace a => Int -> Mode a -> Mode a
- modeToScale :: AffineSpace a => a -> Mode a -> Scale a
- scaleToList :: AffineSpace a => Scale a -> [a]
- data Function a
- functionFromSteps :: [Diff a] -> Diff a -> Function a
- functionIntervals :: Lens' (Function a) [Diff a]
- functionRepeat :: Lens' (Function a) (Diff a)
- data Chord a
- chordTonic :: Lens' (Chord a) a
- chordFunction :: Lens' (Chord a) (Function a)
- complementInterval :: AffineSpace a => Function a -> Diff a
- invertChord :: AffineSpace a => Int -> Function a -> Function a
- functionToChord :: AffineSpace a => a -> Function a -> Chord a
- chordToList :: AffineSpace a => Chord a -> [a]
- majorScale :: Mode Pitch
- pureMinorScale :: Mode Pitch
- harmonicMinorScale :: Mode Pitch
- melodicMinorScaleUp :: Mode Pitch
- aeolian :: Mode Pitch
- locrian :: Mode Pitch
- ionian :: Mode Pitch
- dorian :: Mode Pitch
- phrygian :: Mode Pitch
- lydian :: Mode Pitch
- mixolydian :: Mode Pitch
- majorPentaTonic :: Mode Pitch
- minorPentaTonic :: Mode Pitch
- bluesMinor :: Mode Pitch
- bluesMajor :: Mode Pitch
- bebopScale :: Mode Pitch
- wholeTone :: Mode Pitch
- octatonic :: Mode Pitch
- firstMode :: Mode Pitch
- secondMode :: Mode Pitch
- thirdMode :: Mode Pitch
- fourthMode :: Mode Pitch
- fifthMode :: Mode Pitch
- sixthMode :: Mode Pitch
- seventhMode :: Mode Pitch
- majorTriad :: Function Pitch
- minorTriad :: Function Pitch
- augmentedChord :: Function Pitch
- diminishedChord :: Function Pitch
- halfDiminishedChord :: Function Pitch
- majorMinorSeventhChord :: Function Pitch
- majorMajorSeventhChord :: Function Pitch
Modes and scales
modeFromSteps :: [Diff a] -> Diff a -> Mode a Source
[Interval] -> Interval -> Mode Pitch
modeIntervals :: Lens' (Mode a) [Diff a] Source
Lens' (Mode Pitch) [Interval]
modeRepeat :: Lens' (Mode a) (Diff a) Source
Lens' (Mode Pitch) Interval
scaleTonic :: Lens' (Scale a) a Source
Lens' (Scale Pitch) Pitch
leadingInterval :: AffineSpace a => Mode a -> Diff a Source
>>>
leadingInterval majorScale
m2>>>
leadingInterval harmonicMinorScale
m2>>>
leadingInterval pureMinorScale
_M2
invertMode :: AffineSpace a => Int -> Mode a -> Mode a Source
modeToScale :: AffineSpace a => a -> Mode a -> Scale a Source
scaleToList :: AffineSpace a => Scale a -> [a] Source
Chord types and chords
functionFromSteps :: [Diff a] -> Diff a -> Function a Source
[Interval] -> Interval -> Function Pitch
functionIntervals :: Lens' (Function a) [Diff a] Source
Lens' (Function Pitch) [Interval]
functionRepeat :: Lens' (Function a) (Diff a) Source
Lens' (Function Pitch) Interval
chordTonic :: Lens' (Chord a) a Source
Lens' (Chord Pitch) Pitch
chordFunction :: Lens' (Chord a) (Function a) Source
Lens' (Chord Pitch) (Function Pitch)
complementInterval :: AffineSpace a => Function a -> Diff a Source
>>>
complementInterval majorTriad
_P4>>>
complementInterval minorTriad
_P4>>>
complementInterval majorMinorSeventhChord
_M2
Lens' (Function Pitch) Interval
invertChord :: AffineSpace a => Int -> Function a -> Function a Source
functionToChord :: AffineSpace a => a -> Function a -> Chord a Source
chordToList :: AffineSpace a => Chord a -> [a] Source
Returns a single inversion of the given chord (no repeats!).