ANNOUNCE: HasChorus - some modules for Haskore
Martin Schwenke
martin@meltin.net
Tue, 20 Mar 2001 15:25:45 +1100
HasChorus:
A set of Haskell (http://haskell.org/) modules written on top of
Haskore (http://haskell.org/haskore/) to make it easier to sequence
simple, repetitive music.
HasChorus is available via:
http://meltin.net/hacks/haskell/
----------------------------------------------------------------------
HasChorus *has* a bunch of useful modules:
HasChords.lhs: Build (diatonic) chords from scales and scale degrees.
HasDrums.lhs: Sequence drums in a similar manner to a drum machine.
HasEasyMusic.lhs: Allow simple specification of simple music sequences.
HasGroove.lhs: Modify Haskore performances via normal distributions.
HasPatterns.lhs: Sequence patterns by playing chords in different ways.
HasScales.lhs: Build scales and pick notes by scale degree.
HasSounds.lhs: Some boring ways of playing some instruments.
HaskoreExtras.lhs: Some useful functions that aren't in Haskore.
BubbleSort.lhs: An implementation of bubble sort. Used by HasGroove.lhs.
Normal.lhs: Generate normal distributions. Used by HasGroove.lhs.
TwelveBar.lhs: An example song.
Many of the modules can be used without requiring all of the others.
The dependencies look something like:
HasEasyMusic -> HasChords -> HasScales
HasDrums -> HaskoreExtras
HasSounds -> HasPatterns
HasGroove -> BubbleSort, Normal
TwelveBar -> HasChorus -> *EVERTHING ELSE*
----------------------------------------------------------------------
HasChorus has been tested under:
* Hugs: Currently I use Hugs 98, February 2000. I use -h1000000 so
that HasGroove doesn't melt down... :-)
* GHC: 4.08 (previously under 4.07) under x86 Linux.
----------------------------------------------------------------------
I use HasChorus to sequence up simple backing tracks for my own
compositions.
Enjoy...
peace & happiness,
martin
Martin Schwenke <martin@meltin.net>
p.s. Several people who have expressed interest in this project during
the last few years have received this announcement via a BCC.
They haven't been secretly subscribed to the Haskell mailing
list. :-)