Common Music

| Common Music |

## About

Common Music (CM) is an object-oriented music composition environment. It produces sound by transforming a high-level representation of musical structure into a variety of control protocols for sound synthesis and display. Common Music defines an extensive library of compositional tools and an API through which the composer can easily modify and extend the system.

CM is released under the GNU copyleft software license. See gpl.text for information about the terms and conditions of this agreement.

Sources, runtime images and CVS access are all available from the Common Music project at Sourceforge.

## History

Common Music began in 1989 as a response to the proliferation of different audio hardware, software and computers that resulted from the introduction of low cost processors. As choices increased it became clear that composers would be well served by a system that defined a portable, powerful and consistent interface to the myriad sound rendering possibilities. Work on Common Music began in 1989 when the author was a guest composer at CCRMA, Stanford University. Most of the system as it exists today was implemented at the Institut für Musik und Akustik at the Zentrum für Kunst und Medientechnologie in Karlsruhe, Germany, where the author worked for five years. Common Music continues to evolve today at the University of Illinois at Urbana-Champaign, where the author is now a professor of music composition. In 1996 Common Music received First Prize in the computer-assisted composition category at the 1er Concours International de Logiciels Musicaux in Bourges, France

## Documentation

- Common Music Dictionary
- Installing Common Music
- Running Common Music under (X)Emacs
- Source Examples
- Change History

## Links

- Common Lisp HyperSpec
- Common Lisp: the Language (2nd Edition)
- Common-Lisp.net
- Common Lisp Resources

## Supported Lisp Implementations

Common Music is implemented in Scheme (Guile) and Common Lisp and runs in the following configurations:

| Linux | OS X | Windows | MacOS
| ACL | × | × | × |
CLISP | × | × | × |
CMUCL | × |  |  |
Guile | × | × |
MCL |  | × |  | ×
OpenMCL | × | × |  |
SBCL | × | × |  |

Allegro Common Lisp (ACL)
  A full-featured commercial CL for Linux, Windows and OSX. Includes a native CLOS and a graphical interface.
CLISP
  An opensource ANSI CL that runs practically everywhere. Includes a native CLOS, is actively supported.
CMUCL
  An opensource ANSI CL for Linux. Includes a very good compiler.
Guile Scheme
  Gnu's full-featured Scheme for Linux, OSX, and Cygwin. Includes GOOPS, the Guile object system.
Macintosh Common Lisp (MCL)
  A commercial ANSI CL available for Macintosh. Includes a native CLOS and a graphical interface.
OpenMCL
  An opensource version MCL for OSX and LinuxPPC. Includes a native CLOS, true (native) multi-processing, callbacks, is actively supported.
Steel Bank Common Lisp (SBCL)
  An opensource ANSI CL (offshoot from CMUCL) for Linux and OS X. Includes a very good compiler and is actively supported.

## Contact

Please contact me with questions or comments or to tell me of any compositions you create using CM. To receive email information about CCRMA's family of Lisp music programs (CM, CLM and CMN) please join the CMDIST mailing list by e-mailing your request to: cmdist-request@ccrma.stanford.edu.

Rick Taube
Associate Professor Composition/Theory
School of Music
University of Illinois
Urbana, IL
Net: taube@uiuc.edu
Fax: +1 (217) 355 5780
Vox: +1 (217) 244 2684