Bang-0.1.0.6: A Drum Machine DSL for Haskell

Copyright(c) Benjamin Kovach, 2014
LicenseMIT
Maintainerbkovach13@gmail.com
Stabilityexperimental
PortabilityMac OSX
Safe HaskellNone
LanguageHaskell2010

Bang

Description

The Bang module exports the main functions to actually play a constructed composition. You can use either bang to play a composition a single time, or bangR to continuously repeat a composition ad infinitum.

Synopsis

Documentation

bang :: Music Dur PercussionSound -> IO () Source

Play a composition over the first system Destination for MIDI events.

bang = bangWith defaultOptions

bangR :: Music Dur PercussionSound -> IO () Source

bang a composition repeatedly.

bangR = bang . mconcat . repeat

bangRWith :: Options -> Music Dur PercussionSound -> IO () Source

bangR with specified Options.

bangRWith opts = bangWith opts . mconcat . repeat

data Options Source

Constructors

Options 

Fields

o_bpm :: Integer

BPM of the composition to play

o_tempo :: Dur

Initial Tempo of the composition to play

Instances

defaultOptions :: Options Source

Default options to bang with.

defaultOptions = Options{ o_bpm = 120, o_tempo = 1 }

module Bang.Music