mezzo-0.1.0.0: Typesafe music composition

Copyright(c) Dima Szamozvancev
LicenseMIT
Maintainerds709@cam.ac.uk
Stabilityexperimental
Portabilityportable
Safe HaskellNone
LanguageHaskell2010

Mezzo.Compose.Basic

Contents

Description

Literals for pitches, notes, durations, etc.

Synopsis

Atomic literals

Pitch class literals

Accidental literals

Octave literals

Duration literals and terminators

sc' :: forall n r. (Primitive n, IntListRep r) => ChorT (r :: ChordType n) (Dot Sixteenth) Source #

sc :: forall n r. (Primitive n, IntListRep r) => ChorT (r :: ChordType n) Sixteenth Source #

sn' :: forall r. IntRep r => RootT r (Dot Sixteenth) Source #

sn :: forall r. IntRep r => RootT r Sixteenth Source #

ec' :: forall n r. (Primitive n, IntListRep r) => ChorT (r :: ChordType n) (Dot Eighth) Source #

ec :: forall n r. (Primitive n, IntListRep r) => ChorT (r :: ChordType n) Eighth Source #

en' :: forall r. IntRep r => RootT r (Dot Eighth) Source #

en :: forall r. IntRep r => RootT r Eighth Source #

qc' :: forall n r. (Primitive n, IntListRep r) => ChorT (r :: ChordType n) (Dot Quarter) Source #

qc :: forall n r. (Primitive n, IntListRep r) => ChorT (r :: ChordType n) Quarter Source #

qn' :: forall r. IntRep r => RootT r (Dot Quarter) Source #

qn :: forall r. IntRep r => RootT r Quarter Source #

hc' :: forall n r. (Primitive n, IntListRep r) => ChorT (r :: ChordType n) (Dot Half) Source #

hc :: forall n r. (Primitive n, IntListRep r) => ChorT (r :: ChordType n) Half Source #

hn' :: forall r. IntRep r => RootT r (Dot Half) Source #

hn :: forall r. IntRep r => RootT r Half Source #

wc' :: forall n r. (Primitive n, IntListRep r) => ChorT (r :: ChordType n) (Dot Whole) Source #

wc :: forall n r. (Primitive n, IntListRep r) => ChorT (r :: ChordType n) Whole Source #

wn' :: forall r. IntRep r => RootT r (Dot Whole) Source #

wn :: forall r. IntRep r => RootT r Whole Source #

tc :: forall n r. (Primitive n, IntListRep r) => ChorT (r :: ChordType n) ThirtySecond Source #

tn :: forall r. IntRep r => RootT r ThirtySecond Source #

Pitches

Constructor

pitch :: Primitive (Pitch pc acc oct) => PC pc -> Acc acc -> Oct oct -> Pit (Pitch pc acc oct) Source #

Create a new pitch with the given class, accidental and octave.

silence :: Pit Silence Source #

Value representing silence, the "pitch" of rests.

Concrete literals

Pitch specifiers (admitting continuations)

sharp :: RootM r (Sharpen r) Source #

Raise a pitch by a semitone.

flat :: RootM r (Flatten r) Source #

Lower a pitch by a semitone.

Notes

Constructors

rootP :: IntRep p => Pit p -> Root (PitchRoot p) Source #

Create a new root from a pitch.

rootS :: Primitive (DegreeRoot k d) => KeyS k -> ScaDeg d -> Root (DegreeRoot k d) Source #

Create a new root from a key and a scale degree.

noteP :: (Primitive d, IntRep p) => Pit p -> Dur d -> Music (FromRoot (PitchRoot p) d) Source #

Create a new note from a root and duration.

noteS :: (Primitive d, IntRep (DegreeRoot k sd)) => KeyS k -> ScaDeg sd -> Dur d -> Music (FromRoot (DegreeRoot k sd) d) Source #

rest :: Primitive d => Dur d -> Music (FromSilence d) Source #

Create a rest from a duration.