Bang-0.1.1.0: A Drum Machine DSL for Haskell

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

Bang.Interface.Base

Description

This module exports a number of utilities for constructing primitive notes, rests, and tempo.

Synopsis

Documentation

rest :: Dur -> Music Dur a Source

Rest for a given duration.

note :: Dur -> a -> Music Dur a Source

Convenience constructor for single Notes

bpm :: Integer -> Music a b -> Music a b Source

Set the bpm of a composition

tempo :: Rational -> Music a b -> Music a b Source

Set the tempo of a composition

ts :: Rational -> Rational -> Music a b -> Music a b Source

Set the time signature of a composition n is the beat unit, d is the number of beats per measure. For example, ts 4 4 == Common time

quad :: Music a b -> Music a b Source

Quadruple the tempo of a composition.

double :: Music a b -> Music a b Source

Double the tempo of a composition.

normal :: Music a b -> Music a b Source

Set the tempo of a composition to 1 (default, typically idempotent).

half :: Music a b -> Music a b Source

Half the tempo of a composition.

quarter :: Music a b -> Music a b Source

Quarter the tempo of a composition.

tuplets :: Rational -> Music a b -> Music a b Source

Convenience constructor for smashing n values into a single 1-duration measure.

triplets :: Music a b -> Music a b Source

Play 3 notes per measure.

quintuplets :: Music a b -> Music a b Source

Play 5 notes per measure.

sr :: Music Dur a Source

Sixteenth rest

er :: Music Dur a Source

Eighth rest

qr :: Music Dur a Source

Quarter rest

hr :: Music Dur a Source

Half rest

wr :: Music Dur a Source

Whole rest

dr :: Int -> Dur -> Music Dur a Source

Shorthand for dottedRest

oneDotRest :: Dur -> Music Dur a Source

Constructor for a singly-dotted rest

edr :: Music Dur a Source

Eighth Dotted Rest

qdr :: Music Dur a Source

Quarter Dotted Rest

hdr :: Music Dur a Source

Half Dotted Rest

wdr :: Music Dur a Source

Whole Dotted Rest

m2 :: Monoid a => a -> a -> a Source

Sequence k compositions together without the need for lists. m corresponds to m in mappend, mconcat, etc.

m3 :: Monoid a => a -> a -> a -> a Source

m4 :: Monoid a => a -> a -> a -> a -> a Source

m5 :: Monoid a => a -> a -> a -> a -> a -> a Source

m6 :: Monoid a => a -> a -> a -> a -> a -> a -> a Source

m7 :: Monoid a => a -> a -> a -> a -> a -> a -> a -> a Source

m8 :: Monoid a => a -> a -> a -> a -> a -> a -> a -> a -> a Source

m9 :: Monoid a => a -> a -> a -> a -> a -> a -> a -> a -> a -> a Source

m10 :: Monoid a => a -> a -> a -> a -> a -> a -> a -> a -> a -> a -> a Source

m11 :: Monoid a => a -> a -> a -> a -> a -> a -> a -> a -> a -> a -> a -> a Source

m12 :: Monoid a => a -> a -> a -> a -> a -> a -> a -> a -> a -> a -> a -> a -> a Source

c2 :: Num d => Music d a -> Music d a -> Music d a Source

Play k compositions concurrently without the need for lists. c corresponds to c in cappend, cconcat, etc.

c3 :: Num d => Music d a -> Music d a -> Music d a -> Music d a Source

c4 :: Num d => Music d a -> Music d a -> Music d a -> Music d a -> Music d a Source

c5 :: Num d => Music d a -> Music d a -> Music d a -> Music d a -> Music d a -> Music d a Source

c6 :: Num d => Music d a -> Music d a -> Music d a -> Music d a -> Music d a -> Music d a -> Music d a Source

c7 :: Num d => Music d a -> Music d a -> Music d a -> Music d a -> Music d a -> Music d a -> Music d a -> Music d a Source

c8 :: Num d => Music d a -> Music d a -> Music d a -> Music d a -> Music d a -> Music d a -> Music d a -> Music d a -> Music d a Source

c9 :: Num d => Music d a -> Music d a -> Music d a -> Music d a -> Music d a -> Music d a -> Music d a -> Music d a -> Music d a -> Music d a Source

c10 :: Num d => Music d a -> Music d a -> Music d a -> Music d a -> Music d a -> Music d a -> Music d a -> Music d a -> Music d a -> Music d a -> Music d a Source

c11 :: Num d => Music d a -> Music d a -> Music d a -> Music d a -> Music d a -> Music d a -> Music d a -> Music d a -> Music d a -> Music d a -> Music d a -> Music d a Source

c12 :: Num d => Music d a -> Music d a -> Music d a -> Music d a -> Music d a -> Music d a -> Music d a -> Music d a -> Music d a -> Music d a -> Music d a -> Music d a -> Music d a Source