HMSL, the Hierarchical Music Specification Language HMSL is an experimental programming language that is an extension to Forth. It was developed at the Center for Contemporary Music at Mills College by Phil Burk, Larry Polansky, and David Rosenboom. It is distributed by Frog Peak Music. HMSL, the Hierarchical Music Specification Language, is a programming language for experimental music composition and performance. It is an object oriented set of extensions to the Forth language that runs on the Macintosh (Plus , SE and II) and Amiga computers with 1 Meg or more of RAM. HMSL includes tools for exploring algorithmic composition, intelligent real time instrument design, and musical cognition and perception. It also provides a complete MIDI toolbox including a MIDI parser that can give a programmed response to any MIDI input event. HMSL is used by a number of composers who want to explore the uncharted regions of music. It has been used for everything from enhancing keyboard performance, to interspecies communication experiments, to controlling kinetic sculptures, to generating music based on fractals. HMSL provides a number of classes of musical objects including one that allows you to treat musical parameters as abstract numeric "shapes". Shapes can represent melodies, profiles of harmonic complexity, intervals or any other user defined parameter. These shapes can be edited graphically while being performed. Shapes are played by objects called Players that provide very flexible real time scheduling. Players use objects called Instruments that output the shape data in some way, either as music, or text or graphics, or ... Players can be assembled with other Players in Parallel or Sequential Collections. Collections can also contain other Collections to build very complex hierarchical pieces. One can also place Productions and Jobs in the hierarchy which will execute user written routines. An additional real time performance environment, called Perform, allows you to turn on or off, or change the priority of Actions. Actions are customizable objects that have a programmed response to a programmed stimulus. This environment can be used for complex performance "webs". The Amiga version also provides a toolbox for local sound generation, IFF sample playback and editing, and alternate tunings based on ratios or precalculated periods. Use of HMSL requires some software programming skills, however, an extensive manual, tutorial, and many sample pieces are included to help people get started. HMSL comes in source code form and must be compiled. HMSL costs $150.00. Frog Peak Music P.O. Box 9911 Oakland, CA 94613 (415) 461-1442 Bitnet: phil@mills.berkeley.edu