packages feed

haskore 0.2.0.2 → 0.2.0.3

raw patch · 6 files changed

+113/−52 lines, 6 filesdep ~bytestringdep ~mididep ~processPVP: major bump suggested

API removals or changes: PVP suggests a major version bump

Dependency ranges changed: bytestring, midi, process, transformers

API changes (from Hackage documentation)

- Haskore.Basic.Duration: bn :: T
- Haskore.Basic.Duration: dden :: T
- Haskore.Basic.Duration: ddhn :: T
- Haskore.Basic.Duration: ddqn :: T
- Haskore.Basic.Duration: den :: T
- Haskore.Basic.Duration: dhn :: T
- Haskore.Basic.Duration: dotted :: T -> T
- Haskore.Basic.Duration: doubleDotted :: T -> T
- Haskore.Basic.Duration: dqn :: T
- Haskore.Basic.Duration: dsn :: T
- Haskore.Basic.Duration: dtn :: T
- Haskore.Basic.Duration: dwn :: T
- Haskore.Basic.Duration: en :: T
- Haskore.Basic.Duration: hn :: T
- Haskore.Basic.Duration: qn :: T
- Haskore.Basic.Duration: sfn :: T
- Haskore.Basic.Duration: sn :: T
- Haskore.Basic.Duration: tn :: T
- Haskore.Basic.Duration: wn :: T
- Haskore.Basic.Dynamics: f :: Velocity
- Haskore.Basic.Dynamics: ff :: Velocity
- Haskore.Basic.Dynamics: fff :: Velocity
- Haskore.Basic.Dynamics: forte :: Velocity
- Haskore.Basic.Dynamics: forteFortissimo :: Velocity
- Haskore.Basic.Dynamics: fortissimo :: Velocity
- Haskore.Basic.Dynamics: mezzoForte :: Velocity
- Haskore.Basic.Dynamics: mezzoPiano :: Velocity
- Haskore.Basic.Dynamics: mf :: Velocity
- Haskore.Basic.Dynamics: mp :: Velocity
- Haskore.Basic.Dynamics: normal :: Velocity
- Haskore.Basic.Dynamics: p :: Velocity
- Haskore.Basic.Dynamics: pianissimo :: Velocity
- Haskore.Basic.Dynamics: piano :: Velocity
- Haskore.Basic.Dynamics: pianoPianissimo :: Velocity
- Haskore.Basic.Dynamics: pp :: Velocity
- Haskore.Basic.Dynamics: ppp :: Velocity
- Haskore.Basic.Interval: fifth :: Integral a => a
- Haskore.Basic.Interval: fourth :: Integral a => a
- Haskore.Basic.Interval: majorSecond :: Integral a => a
- Haskore.Basic.Interval: majorSeventh :: Integral a => a
- Haskore.Basic.Interval: majorSixth :: Integral a => a
- Haskore.Basic.Interval: majorThird :: Integral a => a
- Haskore.Basic.Interval: minorSecond :: Integral a => a
- Haskore.Basic.Interval: minorSeventh :: Integral a => a
- Haskore.Basic.Interval: minorSixth :: Integral a => a
- Haskore.Basic.Interval: minorThird :: Integral a => a
- Haskore.Basic.Interval: octave :: Integral a => a
- Haskore.Basic.Interval: octaveFifth :: Integral a => a
- Haskore.Basic.Interval: octaveFourth :: Integral a => a
- Haskore.Basic.Interval: octaveMajorSecond :: Integral a => a
- Haskore.Basic.Interval: octaveMajorSeventh :: Integral a => a
- Haskore.Basic.Interval: octaveMajorSixth :: Integral a => a
- Haskore.Basic.Interval: octaveMajorThird :: Integral a => a
- Haskore.Basic.Interval: octaveMinorSecond :: Integral a => a
- Haskore.Basic.Interval: octaveMinorSeventh :: Integral a => a
- Haskore.Basic.Interval: octaveMinorSixth :: Integral a => a
- Haskore.Basic.Interval: octaveMinorThird :: Integral a => a
- Haskore.Basic.Interval: unison :: Integral a => a
- Haskore.Basic.Scale: aeolian :: Class -> T
- Haskore.Basic.Scale: aeolianRel :: Intervals
- Haskore.Basic.Scale: altered :: Class -> T
- Haskore.Basic.Scale: alteredRel :: Intervals
- Haskore.Basic.Scale: dorian :: Class -> T
- Haskore.Basic.Scale: dorianRel :: Intervals
- Haskore.Basic.Scale: htwt :: Class -> T
- Haskore.Basic.Scale: htwtRel :: Intervals
- Haskore.Basic.Scale: ionian :: Class -> T
- Haskore.Basic.Scale: ionianRel :: Intervals
- Haskore.Basic.Scale: lokrian :: Class -> T
- Haskore.Basic.Scale: lokrianRel :: Intervals
- Haskore.Basic.Scale: lydian :: Class -> T
- Haskore.Basic.Scale: lydianRel :: Intervals
- Haskore.Basic.Scale: mixolydian :: Class -> T
- Haskore.Basic.Scale: mixolydianRel :: Intervals
- Haskore.Basic.Scale: phrygian :: Class -> T
- Haskore.Basic.Scale: phrygianRel :: Intervals
- Haskore.Basic.Scale: wtht :: Class -> T
- Haskore.Basic.Scale: wthtRel :: Intervals
- Haskore.Basic.Tempo: adagio :: Fractional a => a
- Haskore.Basic.Tempo: adagioRange :: Fractional a => (a, a)
- Haskore.Basic.Tempo: allegro :: Fractional a => a
- Haskore.Basic.Tempo: allegroRange :: Fractional a => (a, a)
- Haskore.Basic.Tempo: andante :: Fractional a => a
- Haskore.Basic.Tempo: andanteRange :: Fractional a => (a, a)
- Haskore.Basic.Tempo: larghetto :: Fractional a => a
- Haskore.Basic.Tempo: larghettoRange :: Fractional a => (a, a)
- Haskore.Basic.Tempo: largo :: Fractional a => a
- Haskore.Basic.Tempo: largoRange :: Fractional a => (a, a)
- Haskore.Basic.Tempo: moderato :: Fractional a => a
- Haskore.Basic.Tempo: moderatoRange :: Fractional a => (a, a)
- Haskore.Basic.Tempo: pr1 :: T -> T ()
- Haskore.Basic.Tempo: pr2 :: T -> T ()
- Haskore.Basic.Tempo: prestissimo :: Fractional a => a
- Haskore.Basic.Tempo: prestissimoRange :: Fractional a => (a, a)
- Haskore.Basic.Tempo: presto :: Fractional a => a
- Haskore.Basic.Tempo: prestoRange :: Fractional a => (a, a)
- Haskore.Composition.Chord: dominantSeventh :: Inversion -> T note -> [T note]
- Haskore.Composition.Chord: dominantSeventhInt :: [Relative]
- Haskore.Composition.Chord: harmonicGen :: attr -> Dur -> [Dur -> attr -> T attr] -> T attr
- Haskore.Composition.Chord: intervalInvert :: T -> T
- Haskore.Composition.Chord: major :: Inversion -> T note -> [T note]
- Haskore.Composition.Chord: majorInt :: [Relative]
- Haskore.Composition.Chord: majorSeventh :: Inversion -> T note -> [T note]
- Haskore.Composition.Chord: majorSeventhInt :: [Relative]
- Haskore.Composition.Chord: melodicGen :: attr -> Dur -> [Dur -> attr -> T attr] -> T attr
- Haskore.Composition.Chord: minor :: Inversion -> T note -> [T note]
- Haskore.Composition.Chord: minorInt :: [Relative]
- Haskore.Composition.Chord: minorMajorSeventh :: Inversion -> T note -> [T note]
- Haskore.Composition.Chord: minorMajorSeventhInt :: [Relative]
- Haskore.Composition.Chord: minorSeventh :: Inversion -> T note -> [T note]
- Haskore.Composition.Chord: minorSeventhInt :: [Relative]
- Haskore.Composition.Chord: pitchInvert :: T -> T
- Haskore.Composition.Chord: sameInterval :: T -> T -> Bool
- Haskore.Composition.Chord: samePitch :: T -> T -> Bool
- Haskore.Composition.Chord: sustainedFourth :: Inversion -> T note -> [T note]
- Haskore.Composition.Chord: sustainedFourthInt :: [Relative]
- Haskore.Composition.Rhythm: backBeatP :: drum -> T drum instr
- Haskore.Composition.Rhythm: backBeatR :: T
- Haskore.Composition.Rhythm: basicBassDrum :: T
- Haskore.Composition.Rhythm: basicHiHat :: T
- Haskore.Composition.Rhythm: basicSnare :: T
- Haskore.Composition.Rhythm: clave :: T
- Haskore.Composition.Rhythm: clave5 :: T
- Haskore.Composition.Rhythm: clave7 :: T
- Haskore.Composition.Rhythm: claveBossa :: T
- Haskore.Composition.Rhythm: claveBossaP :: drum -> T drum instr
- Haskore.Composition.Rhythm: claveBossaR :: T
- Haskore.Composition.Rhythm: claveP :: drum -> T drum instr
- Haskore.Composition.Rhythm: claveR :: T
- Haskore.Composition.Rhythm: claveRumba :: T
- Haskore.Composition.Rhythm: claveRumbaP :: drum -> T drum instr
- Haskore.Composition.Rhythm: claveRumbaR :: T
- Haskore.Composition.Rhythm: click :: T
- Haskore.Composition.Rhythm: downBeatP :: drum -> T drum instr
- Haskore.Composition.Rhythm: downBeatR :: T
- Haskore.Composition.Rhythm: jazzRideP :: drum -> T drum instr
- Haskore.Composition.Rhythm: jazzRideR :: T
- Haskore.Composition.Rhythm: jazzWaltzHiHatP :: drum -> T drum instr
- Haskore.Composition.Rhythm: jazzWaltzHiHatR :: T
- Haskore.Composition.Rhythm: jazzWaltzRideP :: drum -> T drum instr
- Haskore.Composition.Rhythm: jazzWaltzRideR :: T
- Haskore.Composition.Rhythm: metro5 :: T
- Haskore.Composition.Rhythm: metro7 :: T
- Haskore.Composition.Rhythm: ride :: T
- Haskore.Composition.Rhythm: tickP :: drum -> T drum instr
- Haskore.Composition.Rhythm: tickR :: T
- Haskore.Example.BesondrerTag: bar0 :: T
- Haskore.Example.BesondrerTag: bar1 :: T
- Haskore.Example.BesondrerTag: bass0 :: T
- Haskore.Example.BesondrerTag: bass1 :: T
- Haskore.Example.ChildSong6: b1 :: T
- Haskore.Example.ChildSong6: b2 :: T
- Haskore.Example.ChildSong6: b3 :: T
- Haskore.Example.ChildSong6: bassLine :: T
- Haskore.Example.ChildSong6: mainVoice :: T
- Haskore.Example.ChildSong6: v1 :: T
- Haskore.Example.ChildSong6: v1a :: T
- Haskore.Example.ChildSong6: v1b :: T
- Haskore.Example.ChildSong6: v2 :: T
- Haskore.Example.ChildSong6: v2a :: T
- Haskore.Example.ChildSong6: v2b :: T
- Haskore.Example.ChildSong6: v2c :: T
- Haskore.Example.ChildSong6: v2d :: T
- Haskore.Example.ChildSong6: v2e :: T
- Haskore.Example.ChildSong6: v2f :: T
- Haskore.Example.Flip: core :: T ()
- Haskore.Example.Flip: core1 :: T ()
- Haskore.Example.Flip: core2 :: T
- Haskore.Example.Flip: song :: T ()
- Haskore.Example.Flip: song1 :: T ()
- Haskore.Example.Flip: song2 :: T
- Haskore.Example.Fractal: w0 :: Fractional a => AT a
- Haskore.Example.Fractal: w1 :: Fractional a => AT a
- Haskore.Example.Fractal: w2 :: Fractional a => AT a
- Haskore.Example.Guitar: udp :: UpDownPattern
- Haskore.Example.Guitar: udpInter :: UpDownPattern
- Haskore.Example.Guitar: udpLast :: UpDownPattern
- Haskore.Example.HeilandHimmel: bass0 :: T
- Haskore.Example.HeilandHimmel: bass1 :: T
- Haskore.Example.HeilandHimmel: bass2 :: T
- Haskore.Example.HeilandHimmel: bass3 :: T
- Haskore.Example.HeilandHimmel: melody0 :: T
- Haskore.Example.HeilandHimmel: melody1 :: T
- Haskore.Example.HeilandHimmel: melody2 :: T
- Haskore.Example.HeilandHimmel: melody3 :: T
- Haskore.Example.Miscellaneous: cascade :: T ()
- Haskore.Example.Miscellaneous: cascade' :: T ()
- Haskore.Example.Miscellaneous: cascades :: T ()
- Haskore.Example.Miscellaneous: cascades' :: T ()
- Haskore.Example.Miscellaneous: cms :: T ()
- Haskore.Example.Miscellaneous: cms' :: T ()
- Haskore.Example.Miscellaneous: cs6 :: T
- Haskore.Example.Miscellaneous: flute :: Instrument
- Haskore.Example.Miscellaneous: mu2 :: T
- Haskore.Example.Miscellaneous: piano :: Instrument
- Haskore.Example.Miscellaneous: run :: T ()
- Haskore.Example.Miscellaneous: run' :: T ()
- Haskore.Example.Miscellaneous: ssf0 :: T
- Haskore.Example.Miscellaneous: t0 :: T
- Haskore.Example.Miscellaneous: t1 :: T
- Haskore.Example.Miscellaneous: t10s :: T
- Haskore.Example.Miscellaneous: t12 :: T
- Haskore.Example.Miscellaneous: t12a :: T
- Haskore.Example.Miscellaneous: t13 :: T
- Haskore.Example.Miscellaneous: t13a :: T
- Haskore.Example.Miscellaneous: t13b :: T
- Haskore.Example.Miscellaneous: t13c :: T
- Haskore.Example.Miscellaneous: t13d :: T
- Haskore.Example.Miscellaneous: t13e :: T
- Haskore.Example.Miscellaneous: t14 :: T
- Haskore.Example.Miscellaneous: t14b :: T
- Haskore.Example.Miscellaneous: t14c :: T
- Haskore.Example.Miscellaneous: t14d :: T
- Haskore.Example.Miscellaneous: t2 :: T
- Haskore.Example.Miscellaneous: t3 :: T
- Haskore.Example.Miscellaneous: t4 :: T
- Haskore.Example.Miscellaneous: t5 :: T
- Haskore.Example.Miscellaneous: tc :: FilePath -> IO ()
- Haskore.Example.Miscellaneous: tcb :: FilePath -> IO ()
- Haskore.Example.Miscellaneous: tcd :: FilePath -> IO ()
- Haskore.Example.Miscellaneous: tcdab :: FilePath -> IO ()
- Haskore.Example.Miscellaneous: temp :: T
- Haskore.Example.Miscellaneous: vibes :: Instrument
- Haskore.Example.NewResolutions: back2NR :: T -> T
- Haskore.Example.NewResolutions: bellPart :: T
- Haskore.Example.NewResolutions: bridge :: T
- Haskore.Example.NewResolutions: cMajorScale :: [T]
- Haskore.Example.NewResolutions: dPentMinScale :: [T]
- Haskore.Example.NewResolutions: diddle :: T -> T
- Haskore.Example.NewResolutions: endRun :: T
- Haskore.Example.NewResolutions: ending :: T
- Haskore.Example.NewResolutions: gMajorScale :: [T]
- Haskore.Example.NewResolutions: glock :: Instr
- Haskore.Example.NewResolutions: harmony3 :: T
- Haskore.Example.NewResolutions: majArpegDown :: T -> Dur -> T
- Haskore.Example.NewResolutions: makeSN :: T -> T
- Haskore.Example.NewResolutions: marimba :: Instr
- Haskore.Example.NewResolutions: melPattern :: T
- Haskore.Example.NewResolutions: melody1 :: T
- Haskore.Example.NewResolutions: melody2 :: T
- Haskore.Example.NewResolutions: melody3 :: T
- Haskore.Example.NewResolutions: minArpegDown :: T -> Dur -> T
- Haskore.Example.NewResolutions: minArpegUp :: T -> Dur -> T
- Haskore.Example.NewResolutions: nextNR :: T -> T
- Haskore.Example.NewResolutions: nextNote :: [T] -> T -> T
- Haskore.Example.NewResolutions: part1 :: T
- Haskore.Example.NewResolutions: part2 :: T
- Haskore.Example.NewResolutions: part3 :: T
- Haskore.Example.NewResolutions: pattern :: T
- Haskore.Example.NewResolutions: piano :: Instr
- Haskore.Example.NewResolutions: prevNR :: T -> T
- Haskore.Example.NewResolutions: prevNote :: [T] -> T -> T
- Haskore.Example.NewResolutions: run1 :: T -> Dur -> T
- Haskore.Example.NewResolutions: run2 :: T -> Dur -> T
- Haskore.Example.NewResolutions: run3 :: T -> Dur -> T
- Haskore.Example.NewResolutions: six3ArpegDown :: T -> Dur -> T
- Haskore.Example.NewResolutions: vib :: Instr
- Haskore.Example.NewResolutions: vibeLine3 :: T
- Haskore.Example.NewResolutions: vibePart3 :: T
- Haskore.Example.NewResolutions: vibesLine :: T
- Haskore.Example.NewResolutions: vibesPart :: T
- Haskore.Example.NewResolutions: xylo :: Instr
- Haskore.Example.Raenzlein: refrain :: T
- Haskore.Example.Raenzlein: s1 :: [Generic NoteAttributes]
- Haskore.Example.Raenzlein: s2 :: [Generic NoteAttributes]
- Haskore.Example.Raenzlein: strings :: T
- Haskore.Example.Raenzlein: verse :: T
- Haskore.Example.SelfSim: pat1 :: [SNote]
- Haskore.Example.SelfSim: pat2 :: [SNote]
- Haskore.Example.SelfSim: pat3 :: [SNote]
- Haskore.Example.SelfSim: pat4 :: [SNote]
- Haskore.Example.SelfSim: pat4' :: [SNote]
- Haskore.Example.SelfSim: sim1 :: Int -> T
- Haskore.Example.SelfSim: sim12 :: Int -> T
- Haskore.Example.SelfSim: sim2 :: Int -> T
- Haskore.Example.SelfSim: sim3 :: Int -> T
- Haskore.Example.SelfSim: sim4s :: Int -> T
- Haskore.Example.SelfSim: t10 :: T
- Haskore.Example.SelfSim: t6 :: T
- Haskore.Example.SelfSim: t7 :: T
- Haskore.Example.SelfSim: t8 :: T
- Haskore.Example.SelfSim: t9 :: T
- Haskore.Example.Ssf: m1 :: [T ()]
- Haskore.Example.Ssf: m2 :: [T ()]
- Haskore.Example.Ssf: m3 :: [T ()]
- Haskore.Example.Ssf: m4 :: [T ()]
- Haskore.Example.WhiteChristmas: bassdrum :: Dur -> T
- Haskore.Example.WhiteChristmas: hihat :: Dur -> T
- Haskore.Example.WhiteChristmas: m1 :: T
- Haskore.Example.WhiteChristmas: m2 :: T
- Haskore.Example.WhiteChristmas: m3a :: T
- Haskore.Example.WhiteChristmas: m3b :: T
- Haskore.Example.WhiteChristmas: m4a :: T
- Haskore.Example.WhiteChristmas: m4b :: T
- Haskore.Example.WhiteChristmas: melody :: T
- Haskore.Example.WhiteChristmas: s1 :: [Generic NoteAttributes]
- Haskore.Example.WhiteChristmas: s2 :: [Generic NoteAttributes]
- Haskore.Example.WhiteChristmas: s3 :: [Generic NoteAttributes]
- Haskore.Example.WhiteChristmas: s4a :: [Generic NoteAttributes]
- Haskore.Example.WhiteChristmas: s4b :: [Generic NoteAttributes]
- Haskore.Example.WhiteChristmas: snare :: Dur -> T
- Haskore.Example.WhiteChristmas: strings :: T
- Haskore.Interface.CSound.Orchestra: (&&*) :: Boolean -> Boolean -> Boolean
- Haskore.Interface.CSound.Orchestra: (/=*) :: TreeTerm term => T term -> T term -> BooleanTerm (T term)
- Haskore.Interface.CSound.Orchestra: (<*) :: TreeTerm term => T term -> T term -> BooleanTerm (T term)
- Haskore.Interface.CSound.Orchestra: (<=*) :: TreeTerm term => T term -> T term -> BooleanTerm (T term)
- Haskore.Interface.CSound.Orchestra: (==*) :: TreeTerm term => T term -> T term -> BooleanTerm (T term)
- Haskore.Interface.CSound.Orchestra: (>*) :: TreeTerm term => T term -> T term -> BooleanTerm (T term)
- Haskore.Interface.CSound.Orchestra: (>=*) :: TreeTerm term => T term -> T term -> BooleanTerm (T term)
- Haskore.Interface.CSound.Orchestra: (||*) :: Boolean -> Boolean -> Boolean
- Haskore.Interface.CSound.Orchestra: dbToAmp :: SigExp -> SigExp
- Haskore.Interface.CSound.Orchestra: delTap :: DelayLine -> SigExp -> SigExp
- Haskore.Interface.CSound.Orchestra: delTapI :: DelayLine -> SigExp -> SigExp
- Haskore.Interface.CSound.Orchestra: expon :: EvalRate -> SigExp -> SigExp -> SigExp -> SigExp
- Haskore.Interface.CSound.Orchestra: exponSeg :: EvalRate -> SigExp -> SigExp -> SigExp -> [(SigExp, SigExp)] -> SigExp
- Haskore.Interface.CSound.Orchestra: fmOsc :: SigExp -> SigExp -> SigExp -> SigExp -> SigExp -> SigExp -> SigExp
- Haskore.Interface.CSound.Orchestra: fmOscI :: SigExp -> SigExp -> SigExp -> SigExp -> SigExp -> SigExp -> SigExp
- Haskore.Interface.CSound.Orchestra: line :: EvalRate -> SigExp -> SigExp -> SigExp -> SigExp
- Haskore.Interface.CSound.Orchestra: lineSeg :: EvalRate -> SigExp -> SigExp -> SigExp -> [(SigExp, SigExp)] -> SigExp
- Haskore.Interface.CSound.Orchestra: noteDur :: SigExp
- Haskore.Interface.CSound.Orchestra: notePit :: SigExp
- Haskore.Interface.CSound.Orchestra: noteVel :: SigExp
- Haskore.Interface.CSound.Orchestra: osc :: EvalRate -> SigExp -> SigExp -> SigExp -> SigExp
- Haskore.Interface.CSound.Orchestra: oscI :: EvalRate -> SigExp -> SigExp -> SigExp -> SigExp
- Haskore.Interface.CSound.Orchestra: p1 :: SigExp
- Haskore.Interface.CSound.Orchestra: p2 :: SigExp
- Haskore.Interface.CSound.Orchestra: p3 :: SigExp
- Haskore.Interface.CSound.Orchestra: p4 :: SigExp
- Haskore.Interface.CSound.Orchestra: p5 :: SigExp
- Haskore.Interface.CSound.Orchestra: p6 :: SigExp
- Haskore.Interface.CSound.Orchestra: p7 :: SigExp
- Haskore.Interface.CSound.Orchestra: p8 :: SigExp
- Haskore.Interface.CSound.Orchestra: p9 :: SigExp
- Haskore.Interface.CSound.Orchestra: pchToHz :: SigExp -> SigExp
- Haskore.Interface.CSound.Orchestra: randomH :: EvalRate -> SigExp -> SigExp -> SigExp
- Haskore.Interface.CSound.Orchestra: randomI :: EvalRate -> SigExp -> SigExp -> SigExp
- Haskore.Interface.CSound.Orchestra: tblLookup :: EvalRate -> IndexMode -> SigExp -> SigExp -> SigExp
- Haskore.Interface.CSound.Orchestra: tblLookupI :: EvalRate -> IndexMode -> SigExp -> SigExp -> SigExp
- Haskore.Interface.CSound.Score: sawtooth :: Table -> Statement
- Haskore.Interface.CSound.Score: simpleSine :: Table -> Statement
- Haskore.Interface.CSound.Score: square :: Table -> Statement
- Haskore.Interface.CSound.Score: triangle :: Table -> Statement
- Haskore.Interface.CSound.Score: whiteNoise :: Table -> Statement
- Haskore.Interface.CSound.Tutorial: cChord :: Float -> Float -> Float -> Float -> TutMelody Quadruple
- Haskore.Interface.CSound.Tutorial: dChord :: Float -> Float -> Float -> Float -> TutMelody Quadruple
- Haskore.Interface.CSound.Tutorial: emChord :: Float -> Float -> Float -> Float -> TutMelody Quadruple
- Haskore.Interface.CSound.Tutorial: flute :: (Name, T, TutOrchestra Mono)
- Haskore.Interface.CSound.Tutorial: fluteEnv :: Statement
- Haskore.Interface.CSound.Tutorial: fluteEnvTN :: Table
- Haskore.Interface.CSound.Tutorial: fluteEnvTable :: SigExp
- Haskore.Interface.CSound.Tutorial: fluteOrc :: TutOrchestra Mono
- Haskore.Interface.CSound.Tutorial: fluteScore :: TutOrchestra out -> T
- Haskore.Interface.CSound.Tutorial: fluteWave :: Statement
- Haskore.Interface.CSound.Tutorial: fluteWaveTN :: Table
- Haskore.Interface.CSound.Tutorial: fluteWaveTable :: SigExp
- Haskore.Interface.CSound.Tutorial: gChord :: Float -> Float -> Float -> Float -> TutMelody Quadruple
- Haskore.Interface.CSound.Tutorial: highPass :: EvalRate -> SigExp -> SigExp -> SigExp
- Haskore.Interface.CSound.Tutorial: instrNum1 :: Instrument
- Haskore.Interface.CSound.Tutorial: instrNum2 :: Instrument
- Haskore.Interface.CSound.Tutorial: lowPass :: EvalRate -> SigExp -> SigExp -> SigExp
- Haskore.Interface.CSound.Tutorial: o1 :: TutOrchestra Mono
- Haskore.Interface.CSound.Tutorial: o10 :: TutOrchestra Stereo
- Haskore.Interface.CSound.Tutorial: o11 :: TutOrchestra Stereo
- Haskore.Interface.CSound.Tutorial: o12 :: TutOrchestra Stereo
- Haskore.Interface.CSound.Tutorial: o13 :: TutOrchestra Mono
- Haskore.Interface.CSound.Tutorial: o14 :: TutOrchestra Mono
- Haskore.Interface.CSound.Tutorial: o15 :: TutOrchestra Mono
- Haskore.Interface.CSound.Tutorial: o16 :: TutOrchestra Stereo
- Haskore.Interface.CSound.Tutorial: o17 :: TutOrchestra Stereo
- Haskore.Interface.CSound.Tutorial: o18 :: TutOrchestra Stereo
- Haskore.Interface.CSound.Tutorial: o19 :: TutOrchestra Mono
- Haskore.Interface.CSound.Tutorial: o2 :: TutOrchestra Mono
- Haskore.Interface.CSound.Tutorial: o20 :: TutOrchestra Stereo
- Haskore.Interface.CSound.Tutorial: o21 :: TutOrchestra Stereo
- Haskore.Interface.CSound.Tutorial: o22 :: TutOrchestra Mono
- Haskore.Interface.CSound.Tutorial: o3 :: TutOrchestra Mono
- Haskore.Interface.CSound.Tutorial: o4 :: TutOrchestra Mono
- Haskore.Interface.CSound.Tutorial: o5 :: TutOrchestra Stereo
- Haskore.Interface.CSound.Tutorial: o6 :: TutOrchestra Stereo
- Haskore.Interface.CSound.Tutorial: o7 :: TutOrchestra Mono
- Haskore.Interface.CSound.Tutorial: o8 :: TutOrchestra Mono
- Haskore.Interface.CSound.Tutorial: o9 :: TutOrchestra Mono
- Haskore.Interface.CSound.Tutorial: piano :: (Name, T, TutOrchestra Mono)
- Haskore.Interface.CSound.Tutorial: pianoEnv :: Statement
- Haskore.Interface.CSound.Tutorial: pianoEnvTN :: Table
- Haskore.Interface.CSound.Tutorial: pianoEnvTable :: SigExp
- Haskore.Interface.CSound.Tutorial: pianoOrc :: TutOrchestra Mono
- Haskore.Interface.CSound.Tutorial: pianoScore :: TutOrchestra out -> T
- Haskore.Interface.CSound.Tutorial: pianoWave :: Statement
- Haskore.Interface.CSound.Tutorial: pianoWaveTN :: Table
- Haskore.Interface.CSound.Tutorial: pianoWaveTable :: SigExp
- Haskore.Interface.CSound.Tutorial: reedy :: (Name, T, TutOrchestra Mono)
- Haskore.Interface.CSound.Tutorial: reedyEnv :: Statement
- Haskore.Interface.CSound.Tutorial: reedyEnvTN :: Table
- Haskore.Interface.CSound.Tutorial: reedyEnvTable :: SigExp
- Haskore.Interface.CSound.Tutorial: reedyOrc :: TutOrchestra Mono
- Haskore.Interface.CSound.Tutorial: reedyScore :: TutOrchestra out -> T
- Haskore.Interface.CSound.Tutorial: reedyWave :: Statement
- Haskore.Interface.CSound.Tutorial: reedyWaveTN :: Table
- Haskore.Interface.CSound.Tutorial: reedyWaveTable :: SigExp
- Haskore.Interface.CSound.Tutorial: sawtoothT :: Statement
- Haskore.Interface.CSound.Tutorial: sawtoothTN :: Table
- Haskore.Interface.CSound.Tutorial: score1 :: TutOrchestra out -> [Statement]
- Haskore.Interface.CSound.Tutorial: score2 :: TutOrchestra out -> [Statement]
- Haskore.Interface.CSound.Tutorial: score3 :: TutOrchestra out -> [Statement]
- Haskore.Interface.CSound.Tutorial: score4 :: TutOrchestra out -> [Statement]
- Haskore.Interface.CSound.Tutorial: score5 :: TutOrchestra out -> [Statement]
- Haskore.Interface.CSound.Tutorial: score6 :: TutOrchestra out -> [Statement]
- Haskore.Interface.CSound.Tutorial: score7 :: TutOrchestra out -> [Statement]
- Haskore.Interface.CSound.Tutorial: score8 :: TutOrchestra out -> [Statement]
- Haskore.Interface.CSound.Tutorial: score9 :: TutOrchestra out -> [Statement]
- Haskore.Interface.CSound.Tutorial: squareT :: Statement
- Haskore.Interface.CSound.Tutorial: squareTN :: Table
- Haskore.Interface.CSound.Tutorial: triangleT :: Statement
- Haskore.Interface.CSound.Tutorial: triangleTN :: Table
- Haskore.Interface.CSound.Tutorial: tut1 :: (Name, T, TutOrchestra Mono)
- Haskore.Interface.CSound.Tutorial: tut10 :: (Name, T, TutOrchestra Stereo)
- Haskore.Interface.CSound.Tutorial: tut11 :: (Name, T, TutOrchestra Stereo)
- Haskore.Interface.CSound.Tutorial: tut12 :: (Name, T, TutOrchestra Stereo)
- Haskore.Interface.CSound.Tutorial: tut13 :: (Name, T, TutOrchestra Mono)
- Haskore.Interface.CSound.Tutorial: tut14 :: (Name, T, TutOrchestra Mono)
- Haskore.Interface.CSound.Tutorial: tut15 :: (Name, T, TutOrchestra Mono)
- Haskore.Interface.CSound.Tutorial: tut16 :: (Name, T, TutOrchestra Stereo)
- Haskore.Interface.CSound.Tutorial: tut17 :: (Name, T, TutOrchestra Stereo)
- Haskore.Interface.CSound.Tutorial: tut18 :: (Name, T, TutOrchestra Stereo)
- Haskore.Interface.CSound.Tutorial: tut19 :: (Name, T, TutOrchestra Mono)
- Haskore.Interface.CSound.Tutorial: tut2 :: (Name, T, TutOrchestra Mono)
- Haskore.Interface.CSound.Tutorial: tut20 :: (Name, T, TutOrchestra Stereo)
- Haskore.Interface.CSound.Tutorial: tut21 :: (Name, T, TutOrchestra Stereo)
- Haskore.Interface.CSound.Tutorial: tut22 :: (Name, T, TutOrchestra Mono)
- Haskore.Interface.CSound.Tutorial: tut3 :: (Name, T, TutOrchestra Mono)
- Haskore.Interface.CSound.Tutorial: tut4 :: (Name, T, TutOrchestra Mono)
- Haskore.Interface.CSound.Tutorial: tut5 :: (Name, T, TutOrchestra Stereo)
- Haskore.Interface.CSound.Tutorial: tut6 :: (Name, T, TutOrchestra Stereo)
- Haskore.Interface.CSound.Tutorial: tut7 :: (Name, T, TutOrchestra Mono)
- Haskore.Interface.CSound.Tutorial: tut8 :: (Name, T, TutOrchestra Mono)
- Haskore.Interface.CSound.Tutorial: tut9 :: (Name, T, TutOrchestra Mono)
- Haskore.Interface.CSound.Tutorial: voiceVibWave :: Statement
- Haskore.Interface.CSound.Tutorial: voiceVibWaveTN :: Table
- Haskore.Interface.CSound.Tutorial: voiceVibWaveTable :: SigExp
- Haskore.Interface.CSound.Tutorial: voiceWave :: Statement
- Haskore.Interface.CSound.Tutorial: voiceWaveTN :: Table
- Haskore.Interface.CSound.Tutorial: voiceWaveTable :: SigExp
- Haskore.Interface.CSound.TutorialCustom: cChord :: Float -> Float -> Float -> Float -> TutMelody Quadruple
- Haskore.Interface.CSound.TutorialCustom: dChord :: Float -> Float -> Float -> Float -> TutMelody Quadruple
- Haskore.Interface.CSound.TutorialCustom: emChord :: Float -> Float -> Float -> Float -> TutMelody Quadruple
- Haskore.Interface.CSound.TutorialCustom: flute :: (Name, T, TutOrchestra Mono)
- Haskore.Interface.CSound.TutorialCustom: fluteEnv :: Statement
- Haskore.Interface.CSound.TutorialCustom: fluteEnvTN :: Table
- Haskore.Interface.CSound.TutorialCustom: fluteEnvTable :: SigExp
- Haskore.Interface.CSound.TutorialCustom: fluteOrc :: TutOrchestra Mono
- Haskore.Interface.CSound.TutorialCustom: fluteScore :: TutOrchestra out -> T
- Haskore.Interface.CSound.TutorialCustom: fluteWave :: Statement
- Haskore.Interface.CSound.TutorialCustom: fluteWaveTN :: Table
- Haskore.Interface.CSound.TutorialCustom: fluteWaveTable :: SigExp
- Haskore.Interface.CSound.TutorialCustom: gChord :: Float -> Float -> Float -> Float -> TutMelody Quadruple
- Haskore.Interface.CSound.TutorialCustom: highPass :: EvalRate -> SigExp -> SigExp -> SigExp
- Haskore.Interface.CSound.TutorialCustom: instrNum1 :: Instrument
- Haskore.Interface.CSound.TutorialCustom: instrNum2 :: Instrument
- Haskore.Interface.CSound.TutorialCustom: lowPass :: EvalRate -> SigExp -> SigExp -> SigExp
- Haskore.Interface.CSound.TutorialCustom: o1 :: TutOrchestra Mono
- Haskore.Interface.CSound.TutorialCustom: o10 :: TutOrchestra Stereo
- Haskore.Interface.CSound.TutorialCustom: o11 :: TutOrchestra Stereo
- Haskore.Interface.CSound.TutorialCustom: o12 :: TutOrchestra Stereo
- Haskore.Interface.CSound.TutorialCustom: o13 :: TutOrchestra Mono
- Haskore.Interface.CSound.TutorialCustom: o14 :: TutOrchestra Mono
- Haskore.Interface.CSound.TutorialCustom: o15 :: TutOrchestra Mono
- Haskore.Interface.CSound.TutorialCustom: o16 :: TutOrchestra Stereo
- Haskore.Interface.CSound.TutorialCustom: o17 :: TutOrchestra Stereo
- Haskore.Interface.CSound.TutorialCustom: o18 :: TutOrchestra Stereo
- Haskore.Interface.CSound.TutorialCustom: o19 :: TutOrchestra Mono
- Haskore.Interface.CSound.TutorialCustom: o2 :: TutOrchestra Mono
- Haskore.Interface.CSound.TutorialCustom: o20 :: TutOrchestra Stereo
- Haskore.Interface.CSound.TutorialCustom: o21 :: TutOrchestra Stereo
- Haskore.Interface.CSound.TutorialCustom: o22 :: TutOrchestra Mono
- Haskore.Interface.CSound.TutorialCustom: o3 :: TutOrchestra Mono
- Haskore.Interface.CSound.TutorialCustom: o4 :: TutOrchestra Mono
- Haskore.Interface.CSound.TutorialCustom: o5 :: TutOrchestra Stereo
- Haskore.Interface.CSound.TutorialCustom: o6 :: TutOrchestra Stereo
- Haskore.Interface.CSound.TutorialCustom: o7 :: TutOrchestra Mono
- Haskore.Interface.CSound.TutorialCustom: o8 :: TutOrchestra Mono
- Haskore.Interface.CSound.TutorialCustom: o9 :: TutOrchestra Mono
- Haskore.Interface.CSound.TutorialCustom: piano :: (Name, T, TutOrchestra Mono)
- Haskore.Interface.CSound.TutorialCustom: pianoEnv :: Statement
- Haskore.Interface.CSound.TutorialCustom: pianoEnvTN :: Table
- Haskore.Interface.CSound.TutorialCustom: pianoEnvTable :: SigExp
- Haskore.Interface.CSound.TutorialCustom: pianoOrc :: TutOrchestra Mono
- Haskore.Interface.CSound.TutorialCustom: pianoScore :: TutOrchestra out -> T
- Haskore.Interface.CSound.TutorialCustom: pianoWave :: Statement
- Haskore.Interface.CSound.TutorialCustom: pianoWaveTN :: Table
- Haskore.Interface.CSound.TutorialCustom: pianoWaveTable :: SigExp
- Haskore.Interface.CSound.TutorialCustom: reedy :: (Name, T, TutOrchestra Mono)
- Haskore.Interface.CSound.TutorialCustom: reedyEnv :: Statement
- Haskore.Interface.CSound.TutorialCustom: reedyEnvTN :: Table
- Haskore.Interface.CSound.TutorialCustom: reedyEnvTable :: SigExp
- Haskore.Interface.CSound.TutorialCustom: reedyOrc :: TutOrchestra Mono
- Haskore.Interface.CSound.TutorialCustom: reedyScore :: TutOrchestra out -> T
- Haskore.Interface.CSound.TutorialCustom: reedyWave :: Statement
- Haskore.Interface.CSound.TutorialCustom: reedyWaveTN :: Table
- Haskore.Interface.CSound.TutorialCustom: reedyWaveTable :: SigExp
- Haskore.Interface.CSound.TutorialCustom: sawtoothT :: Statement
- Haskore.Interface.CSound.TutorialCustom: sawtoothTN :: Table
- Haskore.Interface.CSound.TutorialCustom: score1 :: TutOrchestra out -> [Statement]
- Haskore.Interface.CSound.TutorialCustom: score2 :: TutOrchestra out -> [Statement]
- Haskore.Interface.CSound.TutorialCustom: score3 :: TutOrchestra out -> [Statement]
- Haskore.Interface.CSound.TutorialCustom: score4 :: TutOrchestra out -> [Statement]
- Haskore.Interface.CSound.TutorialCustom: score5 :: TutOrchestra out -> [Statement]
- Haskore.Interface.CSound.TutorialCustom: score6 :: TutOrchestra out -> [Statement]
- Haskore.Interface.CSound.TutorialCustom: score7 :: TutOrchestra out -> [Statement]
- Haskore.Interface.CSound.TutorialCustom: score8 :: TutOrchestra out -> [Statement]
- Haskore.Interface.CSound.TutorialCustom: score9 :: TutOrchestra out -> [Statement]
- Haskore.Interface.CSound.TutorialCustom: squareT :: Statement
- Haskore.Interface.CSound.TutorialCustom: squareTN :: Table
- Haskore.Interface.CSound.TutorialCustom: triangleT :: Statement
- Haskore.Interface.CSound.TutorialCustom: triangleTN :: Table
- Haskore.Interface.CSound.TutorialCustom: tut1 :: (Name, T, TutOrchestra Mono)
- Haskore.Interface.CSound.TutorialCustom: tut10 :: (Name, T, TutOrchestra Stereo)
- Haskore.Interface.CSound.TutorialCustom: tut11 :: (Name, T, TutOrchestra Stereo)
- Haskore.Interface.CSound.TutorialCustom: tut12 :: (Name, T, TutOrchestra Stereo)
- Haskore.Interface.CSound.TutorialCustom: tut13 :: (Name, T, TutOrchestra Mono)
- Haskore.Interface.CSound.TutorialCustom: tut14 :: (Name, T, TutOrchestra Mono)
- Haskore.Interface.CSound.TutorialCustom: tut15 :: (Name, T, TutOrchestra Mono)
- Haskore.Interface.CSound.TutorialCustom: tut16 :: (Name, T, TutOrchestra Stereo)
- Haskore.Interface.CSound.TutorialCustom: tut17 :: (Name, T, TutOrchestra Stereo)
- Haskore.Interface.CSound.TutorialCustom: tut18 :: (Name, T, TutOrchestra Stereo)
- Haskore.Interface.CSound.TutorialCustom: tut19 :: (Name, T, TutOrchestra Mono)
- Haskore.Interface.CSound.TutorialCustom: tut2 :: (Name, T, TutOrchestra Mono)
- Haskore.Interface.CSound.TutorialCustom: tut20 :: (Name, T, TutOrchestra Stereo)
- Haskore.Interface.CSound.TutorialCustom: tut21 :: (Name, T, TutOrchestra Stereo)
- Haskore.Interface.CSound.TutorialCustom: tut22 :: (Name, T, TutOrchestra Mono)
- Haskore.Interface.CSound.TutorialCustom: tut3 :: (Name, T, TutOrchestra Mono)
- Haskore.Interface.CSound.TutorialCustom: tut4 :: (Name, T, TutOrchestra Mono)
- Haskore.Interface.CSound.TutorialCustom: tut5 :: (Name, T, TutOrchestra Stereo)
- Haskore.Interface.CSound.TutorialCustom: tut6 :: (Name, T, TutOrchestra Stereo)
- Haskore.Interface.CSound.TutorialCustom: tut7 :: (Name, T, TutOrchestra Mono)
- Haskore.Interface.CSound.TutorialCustom: tut8 :: (Name, T, TutOrchestra Mono)
- Haskore.Interface.CSound.TutorialCustom: tut9 :: (Name, T, TutOrchestra Mono)
- Haskore.Interface.CSound.TutorialCustom: voiceVibWave :: Statement
- Haskore.Interface.CSound.TutorialCustom: voiceVibWaveTN :: Table
- Haskore.Interface.CSound.TutorialCustom: voiceVibWaveTable :: SigExp
- Haskore.Interface.CSound.TutorialCustom: voiceWave :: Statement
- Haskore.Interface.CSound.TutorialCustom: voiceWaveTN :: Table
- Haskore.Interface.CSound.TutorialCustom: voiceWaveTable :: SigExp
- Haskore.Interface.MIDI.Render: playAlsa :: T -> IO ExitCode
- Haskore.Interface.MIDI.Render: playLinux :: T -> IO ExitCode
- Haskore.Interface.MIDI.Render: playTimidity :: T -> IO ExitCode
- Haskore.Interface.MIDI.Render: playTimidityJack :: T -> IO ExitCode
- Haskore.Interface.MIDI.Render: playWin95 :: T -> IO ExitCode
- Haskore.Interface.MIDI.Render: playWinNT :: T -> IO ExitCode
- Haskore.Interface.MIDI.Write: fromGMMusic :: (C time, RealFrac time, RealFrac dyn) => (ChannelTable Instr, T time dyn Note, T) -> T
- Haskore.Interface.MIDI.Write: fromGMMusicAuto :: (C time, RealFrac time, RealFrac dyn) => (T time dyn Note, T) -> T
- Haskore.Interface.MIDI.Write: fromGMMusicMixed :: (C time, RealFrac time, RealFrac dyn) => (ChannelTable Instr, T time dyn Note, T) -> T
- Haskore.Interface.MIDI.Write: fromGMMusicMixedAuto :: (C time, RealFrac time, RealFrac dyn) => (T time dyn Note, T) -> T
- Haskore.Interface.MIDI.Write: fromRhythmicMusic :: (C time, RealFrac time, RealFrac dyn, Ord drum, Ord instr) => (ChannelProgramPitchTable drum, ChannelProgramTable instr, T time dyn (Note drum instr), T drum instr) -> T
- Haskore.Interface.MIDI.Write: fromRhythmicMusicMixed :: (C time, RealFrac time, RealFrac dyn, Ord drum, Ord instr) => (ChannelProgramPitchTable drum, ChannelProgramTable instr, T time dyn (Note drum instr), T drum instr) -> T
- Haskore.Melody: a :: Octave -> T -> attr -> T attr
- Haskore.Melody: af :: Octave -> T -> attr -> T attr
- Haskore.Melody: as :: Octave -> T -> attr -> T attr
- Haskore.Melody: b :: Octave -> T -> attr -> T attr
- Haskore.Melody: bf :: Octave -> T -> attr -> T attr
- Haskore.Melody: bs :: Octave -> T -> attr -> T attr
- Haskore.Melody: c :: Octave -> T -> attr -> T attr
- Haskore.Melody: cMajArp :: T ()
- Haskore.Melody: cMajChd :: T ()
- Haskore.Melody: cf :: Octave -> T -> attr -> T attr
- Haskore.Melody: cs :: Octave -> T -> attr -> T attr
- Haskore.Melody: d :: Octave -> T -> attr -> T attr
- Haskore.Melody: df :: Octave -> T -> attr -> T attr
- Haskore.Melody: ds :: Octave -> T -> attr -> T attr
- Haskore.Melody: e :: Octave -> T -> attr -> T attr
- Haskore.Melody: ef :: Octave -> T -> attr -> T attr
- Haskore.Melody: es :: Octave -> T -> attr -> T attr
- Haskore.Melody: f :: Octave -> T -> attr -> T attr
- Haskore.Melody: ff :: Octave -> T -> attr -> T attr
- Haskore.Melody: fs :: Octave -> T -> attr -> T attr
- Haskore.Melody: g :: Octave -> T -> attr -> T attr
- Haskore.Melody: gf :: Octave -> T -> attr -> T attr
- Haskore.Melody: gs :: Octave -> T -> attr -> T attr
- Haskore.Melody: invert :: [(d, Atom (Note attr))] -> [(d, Atom (Note attr))]
- Haskore.Melody: invertRetro :: [(d, Atom (Note attr))] -> [(d, Atom (Note attr))]
- Haskore.Melody: retro :: [(d, Atom (Note attr))] -> [(d, Atom (Note attr))]
- Haskore.Melody: retroInvert :: [(d, Atom (Note attr))] -> [(d, Atom (Note attr))]
- Haskore.Melody.Standard: a :: Octave -> T -> attr -> T attr
- Haskore.Melody.Standard: af :: Octave -> T -> attr -> T attr
- Haskore.Melody.Standard: as :: Octave -> T -> attr -> T attr
- Haskore.Melody.Standard: b :: Octave -> T -> attr -> T attr
- Haskore.Melody.Standard: bf :: Octave -> T -> attr -> T attr
- Haskore.Melody.Standard: bs :: Octave -> T -> attr -> T attr
- Haskore.Melody.Standard: c :: Octave -> T -> attr -> T attr
- Haskore.Melody.Standard: cf :: Octave -> T -> attr -> T attr
- Haskore.Melody.Standard: cs :: Octave -> T -> attr -> T attr
- Haskore.Melody.Standard: d :: Octave -> T -> attr -> T attr
- Haskore.Melody.Standard: df :: Octave -> T -> attr -> T attr
- Haskore.Melody.Standard: ds :: Octave -> T -> attr -> T attr
- Haskore.Melody.Standard: e :: Octave -> T -> attr -> T attr
- Haskore.Melody.Standard: ef :: Octave -> T -> attr -> T attr
- Haskore.Melody.Standard: es :: Octave -> T -> attr -> T attr
- Haskore.Melody.Standard: f :: Octave -> T -> attr -> T attr
- Haskore.Melody.Standard: ff :: Octave -> T -> attr -> T attr
- Haskore.Melody.Standard: fs :: Octave -> T -> attr -> T attr
- Haskore.Melody.Standard: g :: Octave -> T -> attr -> T attr
- Haskore.Melody.Standard: gf :: Octave -> T -> attr -> T attr
- Haskore.Melody.Standard: gs :: Octave -> T -> attr -> T attr
- Haskore.Music: (+:+) :: T note -> T note -> T note
- Haskore.Music: (=:=) :: T note -> T note -> T note
- Haskore.Music: accelerando :: Rational -> T note -> T note
- Haskore.Music: accent :: Rational -> T note -> T note
- Haskore.Music: bigAccent :: T note -> T note
- Haskore.Music: bnr :: T note
- Haskore.Music: chord :: [T note] -> T note
- Haskore.Music: crescendo :: Rational -> T note -> T note
- Haskore.Music: ddenr :: T note
- Haskore.Music: ddhnr :: T note
- Haskore.Music: ddqnr :: T note
- Haskore.Music: defltAccent :: T note -> T note
- Haskore.Music: defltLegato :: T note -> T note
- Haskore.Music: defltStaccato :: T note -> T note
- Haskore.Music: denr :: T note
- Haskore.Music: dhnr :: T note
- Haskore.Music: diminuendo :: Rational -> T note -> T note
- Haskore.Music: dqnr :: T note
- Haskore.Music: dsnr :: T note
- Haskore.Music: dtnr :: T note
- Haskore.Music: dwnr :: T note
- Haskore.Music: enr :: T note
- Haskore.Music: hnr :: T note
- Haskore.Music: legato :: Dur -> T note -> T note
- Haskore.Music: line :: [T note] -> T note
- Haskore.Music: loudness1 :: Rational -> T note -> T note
- Haskore.Music: qnr :: T note
- Haskore.Music: ritardando :: Rational -> T note -> T note
- Haskore.Music: sfnr :: T note
- Haskore.Music: snr :: T note
- Haskore.Music: staccato :: Dur -> T note -> T note
- Haskore.Music: tnr :: T note
- Haskore.Music: wnr :: T note
- Haskore.Music.GeneralMIDI: (+:+) :: T note -> T note -> T note
- Haskore.Music.GeneralMIDI: (=:=) :: T note -> T note -> T note
- Haskore.Music.GeneralMIDI: accelerando :: Rational -> T note -> T note
- Haskore.Music.GeneralMIDI: accent :: Rational -> T note -> T note
- Haskore.Music.GeneralMIDI: bigAccent :: T note -> T note
- Haskore.Music.GeneralMIDI: bn :: T
- Haskore.Music.GeneralMIDI: bnr :: T note
- Haskore.Music.GeneralMIDI: chord :: [T note] -> T note
- Haskore.Music.GeneralMIDI: crescendo :: Rational -> T note -> T note
- Haskore.Music.GeneralMIDI: dden :: T
- Haskore.Music.GeneralMIDI: ddenr :: T note
- Haskore.Music.GeneralMIDI: ddhn :: T
- Haskore.Music.GeneralMIDI: ddhnr :: T note
- Haskore.Music.GeneralMIDI: ddqn :: T
- Haskore.Music.GeneralMIDI: ddqnr :: T note
- Haskore.Music.GeneralMIDI: defltAccent :: T note -> T note
- Haskore.Music.GeneralMIDI: defltLegato :: T note -> T note
- Haskore.Music.GeneralMIDI: defltStaccato :: T note -> T note
- Haskore.Music.GeneralMIDI: den :: T
- Haskore.Music.GeneralMIDI: denr :: T note
- Haskore.Music.GeneralMIDI: dhn :: T
- Haskore.Music.GeneralMIDI: dhnr :: T note
- Haskore.Music.GeneralMIDI: diminuendo :: Rational -> T note -> T note
- Haskore.Music.GeneralMIDI: dqn :: T
- Haskore.Music.GeneralMIDI: dqnr :: T note
- Haskore.Music.GeneralMIDI: dsn :: T
- Haskore.Music.GeneralMIDI: dsnr :: T note
- Haskore.Music.GeneralMIDI: dtn :: T
- Haskore.Music.GeneralMIDI: dtnr :: T note
- Haskore.Music.GeneralMIDI: dwn :: T
- Haskore.Music.GeneralMIDI: dwnr :: T note
- Haskore.Music.GeneralMIDI: en :: T
- Haskore.Music.GeneralMIDI: enr :: T note
- Haskore.Music.GeneralMIDI: hn :: T
- Haskore.Music.GeneralMIDI: hnr :: T note
- Haskore.Music.GeneralMIDI: legato :: Dur -> T note -> T note
- Haskore.Music.GeneralMIDI: line :: [T note] -> T note
- Haskore.Music.GeneralMIDI: loudness1 :: Rational -> T note -> T note
- Haskore.Music.GeneralMIDI: qn :: T
- Haskore.Music.GeneralMIDI: qnr :: T note
- Haskore.Music.GeneralMIDI: ritardando :: Rational -> T note -> T note
- Haskore.Music.GeneralMIDI: sfn :: T
- Haskore.Music.GeneralMIDI: sfnr :: T note
- Haskore.Music.GeneralMIDI: sn :: T
- Haskore.Music.GeneralMIDI: snr :: T note
- Haskore.Music.GeneralMIDI: staccato :: Dur -> T note -> T note
- Haskore.Music.GeneralMIDI: tn :: T
- Haskore.Music.GeneralMIDI: tnr :: T note
- Haskore.Music.GeneralMIDI: wn :: T
- Haskore.Music.GeneralMIDI: wnr :: T note
- Haskore.Music.Rhythmic: (+:+) :: T note -> T note -> T note
- Haskore.Music.Rhythmic: (=:=) :: T note -> T note -> T note
- Haskore.Music.Rhythmic: accelerando :: Rational -> T note -> T note
- Haskore.Music.Rhythmic: accent :: Rational -> T note -> T note
- Haskore.Music.Rhythmic: bigAccent :: T note -> T note
- Haskore.Music.Rhythmic: bn :: T
- Haskore.Music.Rhythmic: bnr :: T note
- Haskore.Music.Rhythmic: chord :: [T note] -> T note
- Haskore.Music.Rhythmic: crescendo :: Rational -> T note -> T note
- Haskore.Music.Rhythmic: dden :: T
- Haskore.Music.Rhythmic: ddenr :: T note
- Haskore.Music.Rhythmic: ddhn :: T
- Haskore.Music.Rhythmic: ddhnr :: T note
- Haskore.Music.Rhythmic: ddqn :: T
- Haskore.Music.Rhythmic: ddqnr :: T note
- Haskore.Music.Rhythmic: defltAccent :: T note -> T note
- Haskore.Music.Rhythmic: defltLegato :: T note -> T note
- Haskore.Music.Rhythmic: defltStaccato :: T note -> T note
- Haskore.Music.Rhythmic: den :: T
- Haskore.Music.Rhythmic: denr :: T note
- Haskore.Music.Rhythmic: dhn :: T
- Haskore.Music.Rhythmic: dhnr :: T note
- Haskore.Music.Rhythmic: diminuendo :: Rational -> T note -> T note
- Haskore.Music.Rhythmic: dqn :: T
- Haskore.Music.Rhythmic: dqnr :: T note
- Haskore.Music.Rhythmic: dsn :: T
- Haskore.Music.Rhythmic: dsnr :: T note
- Haskore.Music.Rhythmic: dtn :: T
- Haskore.Music.Rhythmic: dtnr :: T note
- Haskore.Music.Rhythmic: dwn :: T
- Haskore.Music.Rhythmic: dwnr :: T note
- Haskore.Music.Rhythmic: en :: T
- Haskore.Music.Rhythmic: enr :: T note
- Haskore.Music.Rhythmic: hn :: T
- Haskore.Music.Rhythmic: hnr :: T note
- Haskore.Music.Rhythmic: legato :: Dur -> T note -> T note
- Haskore.Music.Rhythmic: line :: [T note] -> T note
- Haskore.Music.Rhythmic: loudness1 :: Rational -> T note -> T note
- Haskore.Music.Rhythmic: qn :: T
- Haskore.Music.Rhythmic: qnr :: T note
- Haskore.Music.Rhythmic: ritardando :: Rational -> T note -> T note
- Haskore.Music.Rhythmic: sfn :: T
- Haskore.Music.Rhythmic: sfnr :: T note
- Haskore.Music.Rhythmic: sn :: T
- Haskore.Music.Rhythmic: snr :: T note
- Haskore.Music.Rhythmic: staccato :: Dur -> T note -> T note
- Haskore.Music.Rhythmic: tn :: T
- Haskore.Music.Rhythmic: tnr :: T note
- Haskore.Music.Rhythmic: wn :: T
- Haskore.Music.Rhythmic: wnr :: T note
- Haskore.Music.Standard: (+:+) :: T note -> T note -> T note
- Haskore.Music.Standard: (=:=) :: T note -> T note -> T note
- Haskore.Music.Standard: accelerando :: Rational -> T note -> T note
- Haskore.Music.Standard: accent :: Rational -> T note -> T note
- Haskore.Music.Standard: bigAccent :: T note -> T note
- Haskore.Music.Standard: bn :: T
- Haskore.Music.Standard: bnr :: T note
- Haskore.Music.Standard: chord :: [T note] -> T note
- Haskore.Music.Standard: crescendo :: Rational -> T note -> T note
- Haskore.Music.Standard: dden :: T
- Haskore.Music.Standard: ddenr :: T note
- Haskore.Music.Standard: ddhn :: T
- Haskore.Music.Standard: ddhnr :: T note
- Haskore.Music.Standard: ddqn :: T
- Haskore.Music.Standard: ddqnr :: T note
- Haskore.Music.Standard: defltAccent :: T note -> T note
- Haskore.Music.Standard: defltLegato :: T note -> T note
- Haskore.Music.Standard: defltStaccato :: T note -> T note
- Haskore.Music.Standard: den :: T
- Haskore.Music.Standard: denr :: T note
- Haskore.Music.Standard: dhn :: T
- Haskore.Music.Standard: dhnr :: T note
- Haskore.Music.Standard: diminuendo :: Rational -> T note -> T note
- Haskore.Music.Standard: dqn :: T
- Haskore.Music.Standard: dqnr :: T note
- Haskore.Music.Standard: dsn :: T
- Haskore.Music.Standard: dsnr :: T note
- Haskore.Music.Standard: dtn :: T
- Haskore.Music.Standard: dtnr :: T note
- Haskore.Music.Standard: dwn :: T
- Haskore.Music.Standard: dwnr :: T note
- Haskore.Music.Standard: en :: T
- Haskore.Music.Standard: enr :: T note
- Haskore.Music.Standard: hn :: T
- Haskore.Music.Standard: hnr :: T note
- Haskore.Music.Standard: legato :: Dur -> T note -> T note
- Haskore.Music.Standard: line :: [T note] -> T note
- Haskore.Music.Standard: loudness1 :: Rational -> T note -> T note
- Haskore.Music.Standard: qn :: T
- Haskore.Music.Standard: qnr :: T note
- Haskore.Music.Standard: ritardando :: Rational -> T note -> T note
- Haskore.Music.Standard: sfn :: T
- Haskore.Music.Standard: sfnr :: T note
- Haskore.Music.Standard: sn :: T
- Haskore.Music.Standard: snr :: T note
- Haskore.Music.Standard: staccato :: Dur -> T note -> T note
- Haskore.Music.Standard: tn :: T
- Haskore.Music.Standard: tnr :: T note
- Haskore.Music.Standard: wn :: T
- Haskore.Music.Standard: wnr :: T note
- Haskore.Performance.Player: legatoAbs :: (C time, Fractional time) => T -> Monad time dyn note -> Monad time dyn note
- Haskore.Performance.Player: legatoRel :: (C time, Fractional time) => T -> Monad time dyn note -> Monad time dyn note
- Haskore.Performance.Player: slurredAbs :: (C time, Fractional time) => T -> Monad time dyn note -> Monad time dyn note
- Haskore.Performance.Player: slurredRel :: (C time, Fractional time) => T -> Monad time dyn note -> Monad time dyn note
- Haskore.Performance.Player: staccatoAbs :: (C time, Fractional time) => T -> Monad time dyn note -> Monad time dyn note
- Haskore.Performance.Player: staccatoRel :: (C time, Fractional time) => T -> Monad time dyn note -> Monad time dyn note
- Haskore.Process.Optimization: all :: T note -> T note
- Haskore.Process.Optimization: composition :: T note -> T note
- Haskore.Process.Optimization: duration :: T note -> T note
- Haskore.Process.Optimization: mergeControl :: (Control -> Maybe a) -> (a -> T note -> T note) -> (a -> a -> a) -> T note -> T note
- Haskore.Process.Optimization: mergeControlCompact :: (Control -> Maybe a) -> (a -> T note -> T note) -> (a -> a -> a) -> T note -> T note
- Haskore.Process.Optimization: rest :: T note -> T note
- Haskore.Process.Optimization: tempo :: T note -> T note
- Haskore.Process.Optimization: transpose :: T note -> T note
- Haskore.Process.Optimization: volume :: T note -> T note
- Medium: (+:+) :: Construct medium => medium a -> medium a -> medium a
- Medium: (=:=) :: Construct medium => medium a -> medium a -> medium a
- Medium: parallel :: (Construct medium, C a) => [medium a] -> medium a
- Medium: parallel1 :: Construct medium => [medium a] -> medium a
- Medium: serial :: (Construct medium, C a) => [medium a] -> medium a
- Medium: serial1 :: Construct medium => [medium a] -> medium a
- Medium.Controlled.List: parallel :: [T control a] -> T control a
- Medium.Controlled.List: parallelToList :: T control a -> [T control a]
- Medium.Controlled.List: serial :: [T control a] -> T control a
- Medium.Controlled.List: serialToList :: T control a -> [T control a]
- Medium.LabeledControlled.List: parallelLabel :: Label label => [T label control content] -> T label control content
- Medium.LabeledControlled.List: parallelToList :: T label control a -> [T label control a]
- Medium.LabeledControlled.List: serialLabel :: Label label => [T label control content] -> T label control content
- Medium.LabeledControlled.List: serialToList :: T label control a -> [T label control a]
- Medium.Plain.Binary: parallelS :: T a -> [T a] -> [T a]
- Medium.Plain.Binary: serialS :: T a -> [T a] -> [T a]
- Medium.Plain.List: parallelToList :: T a -> [T a]
- Medium.Plain.List: serialToList :: T a -> [T a]
+ Haskore.Basic.Duration: bn, sfn, tn, sn, en, qn, hn, wn :: T
+ Haskore.Basic.Duration: ddhn, dden, ddqn :: T
+ Haskore.Basic.Duration: dotted, doubleDotted :: T -> T
+ Haskore.Basic.Duration: dwn, dtn, dsn, den, dqn, dhn :: T
+ Haskore.Basic.Dynamics: normal, forteFortissimo, fortissimo, forte, mezzoForte, pianoPianissimo, pianissimo, piano, mezzoPiano, fff, ff, f, mf, ppp, pp, p, mp :: Velocity
+ Haskore.Basic.Interval: unison, octaveMajorSeventh, octaveMinorSeventh, octaveMajorSixth, octaveMinorSixth, octaveFifth, octaveFourth, octaveMajorThird, octaveMinorThird, octaveMajorSecond, octaveMinorSecond, octave, majorSeventh, minorSeventh, majorSixth, minorSixth, fifth, fourth, majorThird, minorThird, majorSecond, minorSecond :: Integral a => a
+ Haskore.Basic.Scale: ionian, wtht, htwt, altered, lokrian, aeolian, mixolydian, lydian, phrygian, dorian :: Class -> T
+ Haskore.Basic.Scale: ionianRel, wthtRel, htwtRel, alteredRel, lokrianRel, aeolianRel, mixolydianRel, lydianRel, phrygianRel, dorianRel :: Intervals
+ Haskore.Basic.Tempo: largo, prestissimo, presto, allegro, moderato, andante, adagio, larghetto :: Fractional a => a
+ Haskore.Basic.Tempo: largoRange, prestissimoRange, prestoRange, allegroRange, moderatoRange, andanteRange, adagioRange, larghettoRange :: Fractional a => (a, a)
+ Haskore.Basic.Tempo: pr1, pr2 :: T -> T ()
+ Haskore.Composition.Chord: major, sustainedFourth, minorMajorSeventh, dominantSeventh, minorSeventh, majorSeventh, minor :: Inversion -> T note -> [T note]
+ Haskore.Composition.Chord: majorInt, sustainedFourthInt, minorMajorSeventhInt, dominantSeventhInt, minorSeventhInt, majorSeventhInt, minorInt :: [Relative]
+ Haskore.Composition.Chord: melodicGen, harmonicGen :: attr -> Dur -> [Dur -> attr -> T attr] -> T attr
+ Haskore.Composition.Chord: pitchInvert, intervalInvert :: T -> T
+ Haskore.Composition.Chord: samePitch, sameInterval :: T -> T -> Bool
+ Haskore.Composition.Rhythm: click, ride, basicHiHat, basicSnare, basicBassDrum, metro7, metro5, claveBossa, claveRumba, clave :: T
+ Haskore.Composition.Rhythm: tickP, backBeatP, downBeatP, jazzWaltzHiHatP, jazzWaltzRideP, jazzRideP, claveBossaP, claveRumbaP, claveP :: drum -> T drum instr
+ Haskore.Composition.Rhythm: tickR, jazzWaltzHiHatR, jazzWaltzRideR, jazzRideR, clave7, clave5, claveBossaR, claveRumbaR, claveR, backBeatR, downBeatR :: T
+ Haskore.Example.BesondrerTag: bar0, bass1, bass0, bar1 :: T
+ Haskore.Example.ChildSong6: b1, b3, b2 :: T
+ Haskore.Example.ChildSong6: bassLine, mainVoice :: T
+ Haskore.Example.ChildSong6: v1, v1b, v1a :: T
+ Haskore.Example.ChildSong6: v2, v2f, v2e, v2d, v2c, v2b, v2a :: T
+ Haskore.Example.Flip: song, core1, core, song1 :: T ()
+ Haskore.Example.Flip: song2, core2 :: T
+ Haskore.Example.Fractal: w0, w2, w1 :: Fractional a => AT a
+ Haskore.Example.Guitar: udp, udpLast, udpInter :: UpDownPattern
+ Haskore.Example.HeilandHimmel: melody0, bass3, bass2, bass1, bass0, melody3, melody2, melody1 :: T
+ Haskore.Example.Miscellaneous: cms', cms :: T ()
+ Haskore.Example.Miscellaneous: piano, flute, vibes :: Instrument
+ Haskore.Example.Miscellaneous: run', cascades', cascade' :: T ()
+ Haskore.Example.Miscellaneous: run, cascades, cascade :: T ()
+ Haskore.Example.Miscellaneous: t0, ssf0, cs6, t14d, t14c, t14b, t14, t13e, t13d, t13c, t13b, t13a, t13, t12a, t12, t10s, t5, t4, t3, t2, t1 :: T
+ Haskore.Example.Miscellaneous: tcb, tcdab, tcd, tc :: FilePath -> IO ()
+ Haskore.Example.Miscellaneous: temp, mu2 :: T
+ Haskore.Example.NewResolutions: cMajorScale, dPentMinScale, gMajorScale :: [T]
+ Haskore.Example.NewResolutions: makeSN, diddle :: T -> T
+ Haskore.Example.NewResolutions: minArpegUp, six3ArpegDown, majArpegDown, minArpegDown :: T -> Dur -> T
+ Haskore.Example.NewResolutions: nextNR, back2NR, prevNR :: T -> T
+ Haskore.Example.NewResolutions: part1, harmony3, ending, bridge, part3, part2 :: T
+ Haskore.Example.NewResolutions: pattern, endRun, melody3, vibePart3, vibeLine3, melody2, vibesPart, vibesLine, bellPart, melody1, melPattern :: T
+ Haskore.Example.NewResolutions: piano, glock, vib, xylo, marimba :: Instr
+ Haskore.Example.NewResolutions: prevNote, nextNote :: [T] -> T -> T
+ Haskore.Example.NewResolutions: run1, run3, run2 :: T -> Dur -> T
+ Haskore.Example.Raenzlein: s1, s2 :: [Generic NoteAttributes]
+ Haskore.Example.Raenzlein: verse, strings, refrain :: T
+ Haskore.Example.SelfSim: pat1, pat4', pat4, pat3, pat2 :: [SNote]
+ Haskore.Example.SelfSim: sim1, sim4s, sim3, sim12, sim2 :: Int -> T
+ Haskore.Example.SelfSim: t6, t10, t9, t8, t7 :: T
+ Haskore.Example.Ssf: m1, m4, m3, m2 :: [T ()]
+ Haskore.Example.WhiteChristmas: bassdrum, hihat, snare :: Dur -> T
+ Haskore.Example.WhiteChristmas: m1, m4b, m3b, m4a, m3a, m2 :: T
+ Haskore.Example.WhiteChristmas: melody, strings :: T
+ Haskore.Example.WhiteChristmas: s1, s4b, s4a, s3, s2 :: [Generic NoteAttributes]
+ Haskore.Interface.CSound.Orchestra: (&&*, ||*) :: Boolean -> Boolean -> Boolean
+ Haskore.Interface.CSound.Orchestra: (<*, /=*, ==*, >=*, >*, <=*) :: TreeTerm term => T term -> T term -> BooleanTerm (T term)
+ Haskore.Interface.CSound.Orchestra: delTap, delTapI :: DelayLine -> SigExp -> SigExp
+ Haskore.Interface.CSound.Orchestra: fmOsc, fmOscI :: SigExp -> SigExp -> SigExp -> SigExp -> SigExp -> SigExp -> SigExp
+ Haskore.Interface.CSound.Orchestra: line, expon :: EvalRate -> SigExp -> SigExp -> SigExp -> SigExp
+ Haskore.Interface.CSound.Orchestra: lineSeg, exponSeg :: EvalRate -> SigExp -> SigExp -> SigExp -> [(SigExp, SigExp)] -> SigExp
+ Haskore.Interface.CSound.Orchestra: noteDur, noteVel, notePit :: SigExp
+ Haskore.Interface.CSound.Orchestra: osc, oscI :: EvalRate -> SigExp -> SigExp -> SigExp -> SigExp
+ Haskore.Interface.CSound.Orchestra: p1, p9, p8, p7, p6, p5, p4, p3, p2 :: SigExp
+ Haskore.Interface.CSound.Orchestra: pchToHz, dbToAmp :: SigExp -> SigExp
+ Haskore.Interface.CSound.Orchestra: randomH, randomI :: EvalRate -> SigExp -> SigExp -> SigExp
+ Haskore.Interface.CSound.Orchestra: tblLookup, tblLookupI :: EvalRate -> IndexMode -> SigExp -> SigExp -> SigExp
+ Haskore.Interface.CSound.Score: simpleSine, whiteNoise, triangle, sawtooth, square :: Table -> Statement
+ Haskore.Interface.CSound.Tutorial: emChord, dChord, gChord, cChord :: Float -> Float -> Float -> Float -> TutMelody Quadruple
+ Haskore.Interface.CSound.Tutorial: instrNum1, instrNum2 :: Instrument
+ Haskore.Interface.CSound.Tutorial: lowPass, highPass :: EvalRate -> SigExp -> SigExp -> SigExp
+ Haskore.Interface.CSound.Tutorial: o1, o22, o19, o15, o14, o13, o9, o8, o7, o4, o3, o2 :: TutOrchestra Mono
+ Haskore.Interface.CSound.Tutorial: o5, o21, o20, o18, o17, o16, o12, o11, o10, o6 :: TutOrchestra Stereo
+ Haskore.Interface.CSound.Tutorial: piano, flute, reedy :: (Name, T, TutOrchestra Mono)
+ Haskore.Interface.CSound.Tutorial: pianoEnv, fluteWave, reedyWave, pianoWave, fluteEnv, reedyEnv :: Statement
+ Haskore.Interface.CSound.Tutorial: pianoEnvTN, fluteWaveTN, reedyWaveTN, pianoWaveTN, fluteEnvTN, reedyEnvTN :: Table
+ Haskore.Interface.CSound.Tutorial: pianoEnvTable, fluteWaveTable, reedyWaveTable, pianoWaveTable, fluteEnvTable, reedyEnvTable :: SigExp
+ Haskore.Interface.CSound.Tutorial: pianoOrc, fluteOrc, reedyOrc :: TutOrchestra Mono
+ Haskore.Interface.CSound.Tutorial: pianoScore, fluteScore, reedyScore :: TutOrchestra out -> T
+ Haskore.Interface.CSound.Tutorial: score1, score9, score8, score7, score6, score5, score4, score3, score2 :: TutOrchestra out -> [Statement]
+ Haskore.Interface.CSound.Tutorial: triangleT, sawtoothT, squareT :: Statement
+ Haskore.Interface.CSound.Tutorial: triangleTN, sawtoothTN, squareTN :: Table
+ Haskore.Interface.CSound.Tutorial: tut1, tut22, tut19, tut15, tut14, tut13, tut9, tut8, tut7, tut4, tut3, tut2 :: (Name, T, TutOrchestra Mono)
+ Haskore.Interface.CSound.Tutorial: tut5, tut21, tut20, tut18, tut17, tut16, tut12, tut11, tut10, tut6 :: (Name, T, TutOrchestra Stereo)
+ Haskore.Interface.CSound.Tutorial: voiceVibWaveTN, voiceWaveTN :: Table
+ Haskore.Interface.CSound.Tutorial: voiceVibWaveTable, voiceWaveTable :: SigExp
+ Haskore.Interface.CSound.Tutorial: voiceWave, voiceVibWave :: Statement
+ Haskore.Interface.CSound.TutorialCustom: emChord, dChord, gChord, cChord :: Float -> Float -> Float -> Float -> TutMelody Quadruple
+ Haskore.Interface.CSound.TutorialCustom: instrNum1, instrNum2 :: Instrument
+ Haskore.Interface.CSound.TutorialCustom: lowPass, highPass :: EvalRate -> SigExp -> SigExp -> SigExp
+ Haskore.Interface.CSound.TutorialCustom: o1, o22, o19, o15, o14, o13, o9, o8, o7, o4, o3, o2 :: TutOrchestra Mono
+ Haskore.Interface.CSound.TutorialCustom: o5, o21, o20, o18, o17, o16, o12, o11, o10, o6 :: TutOrchestra Stereo
+ Haskore.Interface.CSound.TutorialCustom: piano, flute, reedy :: (Name, T, TutOrchestra Mono)
+ Haskore.Interface.CSound.TutorialCustom: pianoEnv, fluteWave, reedyWave, pianoWave, fluteEnv, reedyEnv :: Statement
+ Haskore.Interface.CSound.TutorialCustom: pianoEnvTN, fluteWaveTN, reedyWaveTN, pianoWaveTN, fluteEnvTN, reedyEnvTN :: Table
+ Haskore.Interface.CSound.TutorialCustom: pianoEnvTable, fluteWaveTable, reedyWaveTable, pianoWaveTable, fluteEnvTable, reedyEnvTable :: SigExp
+ Haskore.Interface.CSound.TutorialCustom: pianoOrc, fluteOrc, reedyOrc :: TutOrchestra Mono
+ Haskore.Interface.CSound.TutorialCustom: pianoScore, fluteScore, reedyScore :: TutOrchestra out -> T
+ Haskore.Interface.CSound.TutorialCustom: score1, score9, score8, score7, score6, score5, score4, score3, score2 :: TutOrchestra out -> [Statement]
+ Haskore.Interface.CSound.TutorialCustom: triangleT, sawtoothT, squareT :: Statement
+ Haskore.Interface.CSound.TutorialCustom: triangleTN, sawtoothTN, squareTN :: Table
+ Haskore.Interface.CSound.TutorialCustom: tut1, tut22, tut19, tut15, tut14, tut13, tut9, tut8, tut7, tut4, tut3, tut2 :: (Name, T, TutOrchestra Mono)
+ Haskore.Interface.CSound.TutorialCustom: tut5, tut21, tut20, tut18, tut17, tut16, tut12, tut11, tut10, tut6 :: (Name, T, TutOrchestra Stereo)
+ Haskore.Interface.CSound.TutorialCustom: voiceVibWaveTN, voiceWaveTN :: Table
+ Haskore.Interface.CSound.TutorialCustom: voiceVibWaveTable, voiceWaveTable :: SigExp
+ Haskore.Interface.CSound.TutorialCustom: voiceWave, voiceVibWave :: Statement
+ Haskore.Interface.MIDI.Render: playWin95, playTimidityJack, playTimidity, playAlsa, playLinux, playWinNT :: T -> IO ExitCode
+ Haskore.Interface.MIDI.Write: fromGMMusic, fromGMMusicMixed :: (C time, RealFrac time, RealFrac dyn) => (ChannelTable Instr, T time dyn Note, T) -> T
+ Haskore.Interface.MIDI.Write: fromGMMusicAuto, fromGMMusicMixedAuto :: (C time, RealFrac time, RealFrac dyn) => (T time dyn Note, T) -> T
+ Haskore.Interface.MIDI.Write: fromRhythmicMusic, fromRhythmicMusicMixed :: (C time, RealFrac time, RealFrac dyn, Ord drum, Ord instr) => (ChannelProgramPitchTable drum, ChannelProgramTable instr, T time dyn (Note drum instr), T drum instr) -> T
+ Haskore.Melody: cMajArp, cMajChd :: T ()
+ Haskore.Melody: cf, bs, b, bf, as, a, af, gs, g, gf, fs, f, ff, es, e, ef, ds, d, df, cs, c :: Octave -> T -> attr -> T attr
+ Haskore.Melody: retro, invertRetro, retroInvert, invert :: [(d, Atom (Note attr))] -> [(d, Atom (Note attr))]
+ Haskore.Melody.Standard: cf, bs, b, bf, as, a, af, gs, g, gf, fs, f, ff, es, e, ef, ds, d, df, cs, c :: Octave -> T -> attr -> T attr
+ Haskore.Music: (+:+, =:=) :: T note -> T note -> T note
+ Haskore.Music: accent, accelerando, ritardando, loudness1, diminuendo, crescendo :: Rational -> T note -> T note
+ Haskore.Music: bnr, sfnr, tnr, snr, enr, qnr, hnr, wnr :: T note
+ Haskore.Music: ddhnr, ddenr, ddqnr :: T note
+ Haskore.Music: defltLegato, bigAccent, defltAccent, defltStaccato :: T note -> T note
+ Haskore.Music: dwnr, dtnr, dsnr, denr, dqnr, dhnr :: T note
+ Haskore.Music: line, chord :: [T note] -> T note
+ Haskore.Music: staccato, legato :: Dur -> T note -> T note
+ Haskore.Music.GeneralMIDI: (+:+, =:=) :: T note -> T note -> T note
+ Haskore.Music.GeneralMIDI: accent, accelerando, ritardando, loudness1, diminuendo, crescendo :: Rational -> T note -> T note
+ Haskore.Music.GeneralMIDI: bn, sfn, tn, sn, en, qn, hn, wn :: T
+ Haskore.Music.GeneralMIDI: bnr, sfnr, tnr, snr, enr, qnr, hnr, wnr :: T note
+ Haskore.Music.GeneralMIDI: ddhn, dden, ddqn :: T
+ Haskore.Music.GeneralMIDI: ddhnr, ddenr, ddqnr :: T note
+ Haskore.Music.GeneralMIDI: defltLegato, bigAccent, defltAccent, defltStaccato :: T note -> T note
+ Haskore.Music.GeneralMIDI: dwn, dtn, dsn, den, dqn, dhn :: T
+ Haskore.Music.GeneralMIDI: dwnr, dtnr, dsnr, denr, dqnr, dhnr :: T note
+ Haskore.Music.GeneralMIDI: line, chord :: [T note] -> T note
+ Haskore.Music.GeneralMIDI: staccato, legato :: Dur -> T note -> T note
+ Haskore.Music.Rhythmic: (+:+, =:=) :: T note -> T note -> T note
+ Haskore.Music.Rhythmic: accent, accelerando, ritardando, loudness1, diminuendo, crescendo :: Rational -> T note -> T note
+ Haskore.Music.Rhythmic: bn, sfn, tn, sn, en, qn, hn, wn :: T
+ Haskore.Music.Rhythmic: bnr, sfnr, tnr, snr, enr, qnr, hnr, wnr :: T note
+ Haskore.Music.Rhythmic: ddhn, dden, ddqn :: T
+ Haskore.Music.Rhythmic: ddhnr, ddenr, ddqnr :: T note
+ Haskore.Music.Rhythmic: defltLegato, bigAccent, defltAccent, defltStaccato :: T note -> T note
+ Haskore.Music.Rhythmic: dwn, dtn, dsn, den, dqn, dhn :: T
+ Haskore.Music.Rhythmic: dwnr, dtnr, dsnr, denr, dqnr, dhnr :: T note
+ Haskore.Music.Rhythmic: line, chord :: [T note] -> T note
+ Haskore.Music.Rhythmic: staccato, legato :: Dur -> T note -> T note
+ Haskore.Music.Standard: (+:+, =:=) :: T note -> T note -> T note
+ Haskore.Music.Standard: accent, accelerando, ritardando, loudness1, diminuendo, crescendo :: Rational -> T note -> T note
+ Haskore.Music.Standard: bn, sfn, tn, sn, en, qn, hn, wn :: T
+ Haskore.Music.Standard: bnr, sfnr, tnr, snr, enr, qnr, hnr, wnr :: T note
+ Haskore.Music.Standard: ddhn, dden, ddqn :: T
+ Haskore.Music.Standard: ddhnr, ddenr, ddqnr :: T note
+ Haskore.Music.Standard: defltLegato, bigAccent, defltAccent, defltStaccato :: T note -> T note
+ Haskore.Music.Standard: dwn, dtn, dsn, den, dqn, dhn :: T
+ Haskore.Music.Standard: dwnr, dtnr, dsnr, denr, dqnr, dhnr :: T note
+ Haskore.Music.Standard: line, chord :: [T note] -> T note
+ Haskore.Music.Standard: staccato, legato :: Dur -> T note -> T note
+ Haskore.Performance.Player: staccatoAbs, slurredAbs, legatoAbs :: (C time, Fractional time) => T -> Monad time dyn note -> Monad time dyn note
+ Haskore.Performance.Player: staccatoRel, slurredRel, legatoRel :: (C time, Fractional time) => T -> Monad time dyn note -> Monad time dyn note
+ Haskore.Process.Optimization: all, volume, transpose, tempo, duration, composition, rest :: T note -> T note
+ Haskore.Process.Optimization: mergeControl, mergeControlCompact :: (Control -> Maybe a) -> (a -> T note -> T note) -> (a -> a -> a) -> T note -> T note
+ Medium: (+:+, =:=) :: Construct medium => medium a -> medium a -> medium a
+ Medium: serial, parallel :: (Construct medium, C a) => [medium a] -> medium a
+ Medium: serial1, parallel1 :: Construct medium => [medium a] -> medium a
+ Medium.Controlled.List: serial, parallel :: [T control a] -> T control a
+ Medium.Controlled.List: serialToList, parallelToList :: T control a -> [T control a]
+ Medium.LabeledControlled.List: serialLabel, parallelLabel :: Label label => [T label control content] -> T label control content
+ Medium.LabeledControlled.List: serialToList, parallelToList :: T label control a -> [T label control a]
+ Medium.Plain.Binary: serialS, parallelS :: T a -> [T a] -> [T a]
+ Medium.Plain.List: serialToList, parallelToList :: T a -> [T a]
- Haskore.Example.SelfSim: fringe :: Num a => a -> Cluster -> [SNote]
+ Haskore.Example.SelfSim: fringe :: (Num a, Eq a) => a -> Cluster -> [SNote]
- Haskore.Example.SelfSim: simFringe :: Num a => a -> Pat -> [SNote]
+ Haskore.Example.SelfSim: simFringe :: (Num a, Eq a) => a -> Pat -> [SNote]

Files

haskore.cabal view
@@ -1,5 +1,5 @@ Name:           haskore-Version:        0.2.0.2+Version:        0.2.0.3 License:        GPL License-File:   LICENSE Author:         Paul Hudak <paul.hudak@yale.edu>, Henning Thielemann@@ -39,7 +39,7 @@ Source-Repository this   type:     darcs   location: http://code.haskell.org/haskore/revised/core-  tag:      0.2.0.2+  tag:      0.2.0.3  Flag splitBase   description: Choose the new smaller, split-up base package.@@ -51,13 +51,13 @@ Library   Build-Depends:     markov-chain >=0.0.1 && <0.1,-    midi >=0.1.1 && <0.2,+    midi >=0.2 && <0.3,     event-list >=0.1 && <0.2,     non-negative >=0.1 && <0.2,     data-accessor >=0.2 && <0.3,     utility-ht >=0.0.3 && <0.1,-    transformers >=0.0.1 && <0.3,-    bytestring >=0.9 && <0.10,+    transformers >=0.0.1 && <0.4,+    bytestring >=0.9 && <0.11,     haskell-src >=1.0 && <1.1,     parsec >=2.1 && <3.2 @@ -67,7 +67,7 @@       array >=0.1 && <1.0,       containers >=0.1 && <1.0,       random >=1.0 && <2.0,-      process >=1.0 && <1.1+      process >=1.0 && <1.2   Else     Build-Depends:       base >= 1.0 && < 2,
src/Haskore/Example/SelfSim.lhs view
@@ -31,10 +31,10 @@ > addmult pds iss = zipWith addmult' pds iss >                   where addmult' (p,d) (i,s) = (p+i,d*s) >-> simFringe :: (Num a) => a -> Pat -> [SNote]+> simFringe :: (Num a, Eq a) => a -> Pat -> [SNote] > simFringe n pat = fringe n (Cl [(0,0)] (sim pat)) >-> fringe :: (Num a) => a -> Cluster -> [SNote]+> fringe :: (Num a, Eq a) => a -> Cluster -> [SNote] > fringe 0 (Cl n _)   = [n] > fringe m (Cl _ cls) = concatMap (fringe (m-1)) cls >
src/Haskore/Interface/MIDI/Note.lhs view
@@ -92,8 +92,9 @@ >    dyn -> Rational -> Voice.Velocity > velocityFromStd dyn vel = >    Voice.toVelocity $->    round (limit (0, Voice.maximumVelocity)->                 (dyn * fromRational vel * Voice.normalVelocity))+>    round (limit (0, fromIntegral (Voice.fromVelocity Voice.maximumVelocity))+>                 (dyn * fromRational vel *+>                  fromIntegral (Voice.fromVelocity Voice.normalVelocity)))  > pitchFromStd :: Pitch.Relative -> Pitch.T -> Voice.Pitch > pitchFromStd trans p =@@ -146,7 +147,8 @@  > velocityToStd :: Fractional a => Voice.Velocity -> a > velocityToStd x =->    fromIntegral (Voice.fromVelocity x) / Voice.normalVelocity+>    fromIntegral (Voice.fromVelocity x) /+>    fromIntegral (Voice.fromVelocity Voice.normalVelocity)  > pitchToStd :: Voice.Pitch -> Pitch.T > pitchToStd p = Pitch.fromInt (Voice.subtractPitch Voice.zeroKey p)
src/Haskore/Interface/MIDI/Read.lhs view
@@ -18,7 +18,7 @@ > import qualified Sound.MIDI.Message.Channel.Voice as Voice > import qualified Sound.MIDI.General               as GeneralMidi > import Sound.MIDI.File.Event (T(MIDIEvent, MetaEvent), )-> import Sound.MIDI.File.Event.Meta (T(SetTempo), defltST, defltDurT, )+> import Sound.MIDI.File.Event.Meta (T(SetTempo), defltTempo, ) > import Sound.MIDI.Message.Channel (Body(Voice), Channel, ) > import Sound.MIDI.Message.Channel.Voice (Program, ) >@@ -86,14 +86,14 @@ >    Context.T time dyn note > context = >    Context.setPlayer DefltPf.player $->    Context.setDur 1 $+>    Context.setDur 2 $ >    DefltPf.context  > retrieveTracks :: MidiFile.T -> [[MidiMusic.T]] > retrieveTracks (MidiFile.Cons _ d trks) = >   let cpm = makeCPM trks >   in  map (map (Music.mapNote MidiNote.toGMNote->                  . readTrack (tDiv d) cpm . fst)+>                  . readTrack (MidiFile.ticksPerQuarterNote d) cpm . fst) >              . prepareTrack) trks  > type ChannelProgramMap = Map ChannelMsg.Channel Voice.Program@@ -102,13 +102,13 @@ >    Division -> ChannelProgramMap -> Track -> Music.T MidiNote.T > readFullTrack dv cpm = >   let readTempoTrack (t,r) =->           changeTempo r (readTrack (tDiv dv) cpm t)+>          changeTempo r (readTrack (MidiFile.ticksPerQuarterNote dv) cpm t) >   in  Optimization.all . line . map readTempoTrack . prepareTrack  > prepareTrack :: Track -> [(RichTrack, DurRatio)] > prepareTrack =->    map (extractTempo defltST) . segmentBeforeSetTempo .->    mergeNotes defltST . moveTempoToHead+>    map (extractTempo defltTempo) . segmentBeforeSetTempo .+>    mergeNotes defltTempo . moveTempoToHead  \end{haskelllisting} @@ -145,15 +145,6 @@  \end{haskelllisting} -Translate \code{Divisions} into the number of ticks per quarter note.-\begin{haskelllisting}--> tDiv :: Division -> Tempo-> tDiv (Ticks x) = x-> tDiv (SMPTE _ _) = error "Sorry, SMPTE not yet implemented."--\end{haskelllisting}- \code{moveTempoToHead} gets the information that occurs at the beginning of the piece: the default tempo and the default key signature. A \code{SetTempo} in the middle of the piece@@ -177,7 +168,7 @@ > getHeadTempo :: Track -> (Tempo, Track) > getHeadTempo es = >    maybe->       (defltST, es)+>       (defltTempo, es) >       (\ ~(me,rest) -> >           case me of >              MetaEvent (SetTempo tempo) -> (tempo, rest)@@ -244,28 +235,31 @@  > readTrack :: Tempo -> ChannelProgramMap -> >    RichTrack -> Music.T MidiNote.T-> readTrack ticks cpm =->    PfBE.toMusic . trackTimeToStd ticks+> readTrack ticksPerQN cpm =+>    PfBE.toMusic . trackTimeToStd ticksPerQN >     . richTrackToBE . applyProgChanges cpm  \end{haskelllisting} -Take the division in ticks and a duration value and+Take the division in ticks per quarterNote and+a duration value in number of ticks and converts that to a common note duration (such as quarter note, eighth note, etc.). \begin{haskelllisting}  > fromTicks :: Tempo -> ElapsedTime -> Dur-> fromTicks ticks d =->    toInteger d %+ (toInteger ticks * toInteger defltDurT)+> fromTicks ticksPerQN d =+>    toInteger d %+ (toInteger ticksPerQN * quarter) -     d %+ (fromIntegral ticks * defltDurT))+> quarter :: Integer+> quarter = 4  > trackTimeToStd :: Tempo -> >    PfBE.T ElapsedTime note -> PfBE.T Dur note-> trackTimeToStd ticks =->    TimeList.mapBody (\(PfBE.Event d n) -> PfBE.Event (fromTicks ticks d) n)->       . TimeList.mapTime (fromTicks ticks)+> trackTimeToStd ticksPerQN =+>    TimeList.mapBody+>       (\(PfBE.Event d n) -> PfBE.Event (fromTicks ticksPerQN d) n)+>       . TimeList.mapTime (fromTicks ticksPerQN)  \end{haskelllisting} 
src/Haskore/Interface/MIDI/Write.lhs view
@@ -309,7 +309,13 @@ with this order of execution it may be that notes with equal duration can have slightly different durations in the MIDI file. On the other hand-small rests between notes or small overlappings are avoided.+small rests between notes or small overlappings are avoided.%+\footnote{It would be better to define \code{rate = 4*division},+since this would map a quarter note to \code{division} ticks,+as stated by the MIDI File specification.+For compensation \code{SetTempo} could be set to 250000,+meaning a quarter second per quarter note,+or one second per whole note.}  We manage a \module{Map} which stores the active program number of each MIDI channel.@@ -335,7 +341,7 @@ > setTempo :: (MidiFile.ElapsedTime, MidiFileEvent.T) > setTempo = >    (0, MidiFileEvent.MetaEvent->           (MetaEvent.SetTempo MetaEvent.defltST))+>           (MetaEvent.SetTempo MetaEvent.defltTempo)) > > getChanProg :: MidiNote.T -> (ChannelMsg.Channel, Voice.Program) > getChanProg note = (MidiNote.channel note, MidiNote.program note)@@ -364,7 +370,7 @@ > > rate :: (Num a) => a > rate = 2 * fromIntegral division-> --     ^ compensate defltDurT+> --     ^ would be correctly 4 and the setTempo should be 250000  \end{haskelllisting} 
src/Test/Suite.lhs view
@@ -61,8 +61,11 @@ > import qualified Sound.MIDI.File         as MidiFile > import qualified Sound.MIDI.File.Save    as SaveMidi > import qualified Sound.MIDI.File.Load    as LoadMidi-> import qualified Sound.MIDI.General      as GeneralMidi > import qualified Sound.MIDI.Parser.Report as MidiReport+> import qualified Sound.MIDI.File.Event              as MidiEvent+> import qualified Sound.MIDI.File.Event.Meta         as MetaEvent+> import qualified Sound.MIDI.Message.Channel         as ChannelMsg+> import qualified Sound.MIDI.Message.Channel.Voice   as VoiceMsg  > import qualified Haskore.Interface.CSound.Orchestra as CSOrchestra > import qualified Haskore.Interface.CSound.Score     as CSScore@@ -83,11 +86,11 @@ > import qualified Test.QuickCheck.Batch as QCB > import qualified Test.HUnit      as HUnit > import qualified Test.HUnit.Text as HUnitText-> import System.Random (Random, )  > import qualified Data.Accessor.Basic as Accessor  > import System.Cmd (system, )+> import qualified System.Exit as Exit > import qualified Data.ByteString.Lazy as B    import Debug.Trace (trace)@@ -255,7 +258,8 @@ > testReadMidiPure :: MidiFile.T -> HUnit.Assertion > testReadMidiPure midiFile = >    do->      diffIA (MidiFile.showLines (MidiFile.sortEvents midiFile))+>      _ <- diffIA+>             (MidiFile.showLines (MidiFile.sortEvents midiFile)) >             (MidiFile.showLines (MidiFile.sortEvents >                      (writeMusic (ReadMidi.toGMMusic midiFile)))) >      HUnit.assertEqual@@ -264,10 +268,60 @@ >         (MidiFile.sortEvents (writeMusic (ReadMidi.toGMMusic midiFile)))  > setInstrMidi :: MidiFile.T-> setInstrMidi = (Render.generalMidi->         (MidiMusic.fromMelodyNullAttr MidiMusic.Marimba   (c 0 qn ()) +:+->          MidiMusic.fromMelodyNullAttr MidiMusic.Xylophone (e 0 qn ())))+> setInstrMidi =+>    Render.generalMidi $+>       MidiMusic.fromMelodyNullAttr MidiMusic.Marimba   (c 0 qn ()) +:++>       MidiMusic.fromMelodyNullAttr MidiMusic.Xylophone (e 0 qn ()) +> midiPitch :: Int -> VoiceMsg.Pitch+> midiPitch = VoiceMsg.toPitch++> channel :: Int -> ChannelMsg.Channel+> channel = ChannelMsg.toChannel++> vel :: VoiceMsg.Velocity+> vel = VoiceMsg.normalVelocity++> voiceMsg :: VoiceMsg.T -> MidiEvent.T+> voiceMsg msg =+>    MidiEvent.MIDIEvent $ ChannelMsg.Cons (channel 0) $+>    ChannelMsg.Voice $ msg++> noteOn :: VoiceMsg.Pitch -> MidiEvent.T+> noteOn p =+>    voiceMsg $ VoiceMsg.NoteOn p vel++> noteOff :: VoiceMsg.Pitch -> MidiEvent.T+> noteOff p =+>    voiceMsg $ VoiceMsg.NoteOff p vel++> program :: VoiceMsg.Program -> MidiEvent.T+> program pgm =+>    voiceMsg $ VoiceMsg.ProgramChange pgm++> setTempo :: NonNegW.Int -> MidiEvent.T+> setTempo = MidiEvent.MetaEvent . MetaEvent.SetTempo++> setTempoMidi :: MidiFile.T+> setTempoMidi =+>    MidiFile.Cons MidiFile.Mixed (MidiFile.Ticks 12)+>       [TimeList.cons  0 (program (VoiceMsg.toProgram 0)) $+>        TimeList.cons  0 (setTempo 1000000) $+>        TimeList.cons  0 (noteOn  (midiPitch 60)) $+>        TimeList.cons 12 (noteOff (midiPitch 60)) $+>        TimeList.cons  0 (setTempo  500000) $+>        TimeList.cons  0 (noteOn  (midiPitch 60)) $+>        TimeList.cons 24 (noteOff (midiPitch 60)) $+>        TimeList.cons  0 (setTempo 2000000) $+>        TimeList.cons  0 (noteOn  (midiPitch 60)) $+>        TimeList.cons 12 (noteOff (midiPitch 60)) $+>        TimeList.empty]++> setTempoMusic ::+>    (InstrMap.ChannelTable MidiMusic.Instrument,+>     Context.T NonNegW.Float Float MidiMusic.Note, MidiMusic.T)+> setTempoMusic = ReadMidi.toGMMusic setTempoMidi+ The velocities of the original tests were too strong. MIDI spec says that a non-velocity-sensitive instrument gets velocity value 64.@@ -408,11 +462,11 @@ >        scoName = csoundDir++name++".sco" >    in  do >          origOrchestra <- readFile orcName->          diffIA (sortLines origOrchestra)->             (sortLines $ CSOrchestra.toString newOrchestra)+>          _ <- diffIA (sortLines origOrchestra)+>                  (sortLines $ CSOrchestra.toString newOrchestra) >          origScore <- readFile scoName->          diffIA (sortLines origScore)->             (sortLines $ CSScore.toString newScore)+>          _ <- diffIA (sortLines origScore)+>                  (sortLines $ CSScore.toString newScore) >          return ()  Compare with several files former versions have produced.@@ -947,9 +1001,14 @@ >           "song = MidiMusic.fromStdMelody MidiMusic.AcousticGrandPiano $ " ++ >                   MusicFormat.prettyMelody >                      (StdMelody.fromMelodyNullAttr ctrlMusic)])->       if False->         then system ("echo 'main\n:q' | hugs -98 -P"++hugsPath++" GeneratedTest")->         else system ("ghc -e main -i"++hugsPath++" GeneratedTest")+>       exitCode <-+>          if False+>            then system ("echo 'main\n:q' | hugs -98 -P"++hugsPath++" GeneratedTest")+>            else system ("ghc -e main -i"++hugsPath++" GeneratedTest")+>       HUnit.assertEqual+>          "running Haskell interpreter"+>          exitCode+>          Exit.ExitSuccess >       midi <- B.readFile "test.mid" >       let expectedMidi = >              SaveMidi.toByteString (Render.generalMidi (withPiano ctrlMusic))