15.08.2013 Views

Text, including the two scores - Columbia University Department of ...

Text, including the two scores - Columbia University Department of ...

Text, including the two scores - Columbia University Department of ...

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Music Specification Language). JMSL itself is a family <strong>of</strong> classes that work toge<strong>the</strong>r to create a structure for timing, scheduling, and launching musical processes. Its base class is MusicJob, which a user extends to contain any programming task while keeping its core properties (<strong>the</strong> ability to be (Hierarchical<br />

to function within a collection <strong>of</strong> o<strong>the</strong>r Music Jobs, to be launched by itself or simultaneously with o<strong>the</strong>r MusicJobs, etc) intact. Ano<strong>the</strong>r primary JMSL class is MusicShape, which functions as a flexible table for defining discrete musical data parameters and timing. repeated,<br />

defined several low-level MusicJobs that generate trivial musical processes (rising figures, falling figures, drunk walk figures, sustaining figures, I<br />

fill MusicShapes with <strong>the</strong>se figures, and decide to repeat <strong>the</strong>mselves a certain number <strong>of</strong> times. Outside <strong>of</strong> <strong>the</strong>se classes, and constantly functioning in <strong>the</strong> background, is one or more <strong>of</strong> my class MelodyConstraints, which clamps <strong>the</strong> generated note data to several constraints: allowable pitch range, etc),<br />

range, minimum and maximum pitch leaps, dynamic range, and adherence or non-adherence to a variable tonal center. The intended large-scale directionality <strong>of</strong> <strong>the</strong> musical result is due to <strong>the</strong> fact that <strong>the</strong>se constraints are gradually changing over time. In fact, at any duration<br />

<strong>the</strong> constraints are actually gradually interpolating from one (randomized) series <strong>of</strong> constraints to ano<strong>the</strong>r. This way, <strong>the</strong> underlying figures moment,<br />

be repeated many times, but because <strong>of</strong> <strong>the</strong> gradual change <strong>of</strong> <strong>the</strong> constraints, <strong>the</strong> post-constraint result will usually be slightly (and, in some cases, drastically) different for each repetition <strong>of</strong> <strong>the</strong> underlying figure. At <strong>the</strong> top level <strong>of</strong> <strong>the</strong> program is a ‘voice’, which sequentially launches a<br />

may<br />

4

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!