PLUM Language List

ID:105
ID:106
ID:108
4CED
Composer/Designer:PDP-11
Implementor:Macro-11?
Year:1979
Author:Curtis Abbott
Reference:'The 4CED program', Computer Music Journal, Vol 5, No 1, 1981, pg 13-33.
ID:40
ABC
Composer/Designer:UNIX, Windows, Mac
Implementor:C
Year:1991
Author:Chris Walshaw
Description:This notation language was originally designed for transcribing Irish folk tunes, but has since evolved into a considerably richer language allowing, for example, polymetric output on multiple staves. This music notation format has the advantage of being extremely concise and fairly readable.
Manipulation:MIDI, PostScript
ID:107
AC Toolbox
Composer/Designer:MacOS
Implementor:Lisp
Author:Paul Berg
Description:The AC Toolbox is a Macintosh PPC application to assist the algorithmic composition of music. A legacy version for older, 68K-based computers is also available. Several models for defining musical events are included. They can be used by defining objects such as sections, shapes, masks, or note structures. It is also possible to play, plot, modify, and examine objects in a number of ways. Extensive online help is available. In addition to Midi input and output, the AC Toolbox can also produce text files suitable for use as data in other programs. In particular, score files for Csound, note list files for Common Lisp Music, and tables for MAX can be produced. An important method of creating data in the Toolbox is the use of generators. A number of generators have been included reflecting various approaches to the creation of musical material including tendency masks, stochastic functions, chaotic systems, transition tables, recursive subdivisions, metric indispensabilities, morphological mutations, etc. The AC Toolbox is implemented in Lisp and input syntax often reflects the conventions of this language. It is also possible for a user to extend the Toolbox by adding Lisp functions. For example, additional generators can be defined in Lisp to use with the Toolbox.
Manipulation:MIDI, Csound score files
ID:134
Adagio
Composer/Designer:Mac, PC, Atari, Amiga
Implementor:C
Year:1984
Author:Dannenberg, R. B.
Description:Scoring language used by the Carnegie Mellon Midi Toolkit (CMT).
Reference:Proceedings of the 1986 International Computer Music Conference
ID:57
ALMA
Author:George Logemann and Murray Gould
Description:Alphanumeric Language for Music Analysis, implemented at the Institute for Computer Research in the Humanities (NYU). The idea was to incorporate more than Western staff notations. They implemented some crude translators, proof-listeners (analgous to proof-reading), etc.
ID:100
AML - Algorithmic Music Language
Composer/Designer:CP/M, Apple II
Year:1982
Author:Ray Jurgens - Electronic Arts Research (EAR)
Description:AML consisted of an interpreter and a compiler. The compiler was written in and used a lobotomized version of the Digital Research MAC assembler. The compiler generated code that was read by the interpreter. The AML interpreter was written in Intel 8080 assembly language. The interpreter created up to 8 virtual machines that drove analog synthesizers using various D/A and A/D hardware. Each virtual machine consisted of a stack oriented computer that processed code specifically designed for generating music. The instruction set consisted various operators for manipulating the stacks, reading note lists, computing note lists in real-time and drawing pseudo random numbers including fractals. A version supporting MIDI was the final development, and this version ran on an Apple 2 computer equipped with an Intel 8080 board which talked to a Roland MPU-401 MIDI interface. A wide range of students and composers in the LA area used this system, many through the UCLA extension program. LA Composer Jeff Rona wrote several works for AML, and it was first demonstrated in Denton TX with his "Step Music" with dancers Sean Green and Dianna McNeil. There is an article in the ICMC proceedings for the Denton conference.
ID:43
AMPLE
Composer/Designer:Acorn
Author:Chris Jordan
Description:Forth-like stack-based language, in which letters a-g are the musical notes. A change to capitals indicates a change up an octave, to lowercase is down an octave (symbols < and > do this explicitly). Also is multitasking.
ID:54
Arctic
Composer/Designer:Unix
Implementor:C
Year:1986
Author:Dannenberg, R. B., P. McAvinney, and D. Rubine
Description:A Functional Language for Real-Time Systems.
Reference:'Arctic: A Functional Language for Real-Time Systems', Computer Music Journal 10:4, Winter 1986, pg. 67-78
ID:56
ARES/MARS
Composer/Designer:WIN95, WIN3.1
Implementor:C++
Year:1991 (prototype version), 1997 (commercial version)
Author:IRIS s.r.l.
Description:MARS is a development system for realtime Digital Signal Processing techniques, sound synthesis, filters and sound effects. Sound and MIDI environments can be developped which allow it to be used as a MIDI musical instrument. MARS is a system for audio research, musical production and the education of computer music, for people who like a programmable and flexible sound machine with realtime performance.
Reference:Andrenacci, P., Armani, F., Bessegato, R., Paladin, A., Pisani, P., Prestigiacomo, A., Rosati, C., Sapir, S., Vetuschi, M., The New MARS Workstation, ICMC Proceedings, pp 215-219, Thessalonikas, 1997
Manipulation:audio, MIDI
ID:102
autoklang
Composer/Designer:Burroughs B6700
Implementor:Algol
Author:Curtis Roads
ID:30
BOLT
Composer/Designer:Buchla Lightning
Implementor:Assembler
Author:Lynx Crowe, Chuck Carlson
ID:129
CAL
Composer/Designer:Win3.1, Win95
Year:1992?
Author:Twelve Tone software (Cakewalk)
Description:A lisp-like language that can manipulate MIDI data and do other sequencer-related operations (creating new tracks, etc.) within the Cakewalk sequencer. See http://www.cakewalk.com/devxchange/cal.asp for examples of CAL programs.
Manipulation:MIDI
ID:65
Canon
Composer/Designer:Mac
Implementor:C (XLisp)
Year:1987
Author:Roger B. Dannenberg
Reference:"The Canon Score Language", Computer Music Journal 13:1, Spring 1989, pg. 47-56
ID:59
CHANT
Composer/Designer:PDP-11
Implementor:SAIL
Year:1979
Author:Xavier Rodet , Yves Potard, Conrad Cummings (IRCAM)
Reference:Computer Music Journal
ID:39
CHOPS
Composer/Designer:Buchla 400
Implementor:Assembler
Author:Lynx Crowe
ID:130
ChucK
Composer/Designer:MacOS X, Linux, Windows/Cygwin
Implementor:C/C++
Year:2003
Author:Ge Wang and Perry R. Cook
Description:Concurrent, Strongly-timed, On-the-fly Audio Programming Language.
Reference:http://chuck.cs.princeton.edu/
Manipulation:audio + MIDI
ID:141
CLM (Common Lisp Music)
Composer/Designer:NeXT
Implementor:Lisp
Year:1990
Author:William Schottstaedt
Description:Common Lisp Music (CLM) is a sound synthesis package in the Music V family written primarily in Common Lisp. The instrument design language is a subset of Lisp, extended with a large number of generators: oscil, env, table-lookup, and so on. The run-time portion of an instrument can be compiled into C or Lisp code. Since CLM instruments are lisp functions, a CLM note list is just a lisp expression that happens to call those functions. Recent additions to CLM include support for real-time interactions and integration with the Snd sound editor.
Manipulation:Audio
ID:73
CMIX
Composer/Designer:Unix, NeXT, Linux
Implementor:C
Author:Paul Lansky
Description:Cmix is a package of routines for editing, processing, and creating soundfiles. It also includes a library of routines designed to make it easier to write c programs which deal with soundfiles. A version for Linux, called RTcmix, is maintained by Dave Topper.
Manipulation:Audio
ID:51
CMN (Common Music Notation)
Implementor:Lisp
Author:William Schottstaedt
Description:Common Music Notation (CMN) is a music notation package written in Common Lisp, using CLOS and the Sonata font. It provides for all the usual needs of music notation in a fully customizable, programmable environment.
Manipulation:Notation
ID:74
Cmusic
Composer/Designer:Unix
Implementor:C
Year:198?
Author:F. Richard Moore (UCSD)
Description:Language described in "Elements of Computer Music" by F. Richard Moore.
Manipulation:Audio
ID:42
Common Music
Implementor:Lisp
Author:Heinrich Taube
Description:Common Music (CM) is an object-oriented music composition environment. It produces sound by transforming a high-level representation of musical structure into low-level control statements for a number of different synthesis targets: MIDI, CSound, Common Lisp Music (CLM), Music Kit, CMix, CMusic, RT, Mix and Common Music Notation (CMN). Common Music provides an extensive library of compositional objects and encourages the user to modify and extend the system through subclassing and specialization. Common Music is implemented in Common Lisp and runs on a variety of computers, including NeXT, Macintosh, SGI, SUN, and 386.
ID:76
CompoSeq5
Composer/Designer:i386, DOS
Implementor:C
Year:2000-2003
Author:Jonatan Liljedahl
Description:Environment with Stackbased language for music composition. Algorithmic composition, sequences. Multitasking. Outputs through custombuilt interface, for control of analogue synthesizer hardware.
Manipulation:(Analogue) hardware through custom DAC interface
ID:140
CPN View
Composer/Designer:Windows NT/95. MacOS
Implementor:C++
Year:1980-
Author:Dr. Donncha O Maidin
Description:Provides a C++ class library for representing music scores. Works with scores in ALMA, *kern, NIFF, and Esac. Provides a visualisation and analysis paradigm for music. Huge corpus available, with translators from practially all major encodings.
Manipulation:Music Scores
ID:117
Csound
Composer/Designer:DOS, Windows, Mac, Linux, Atari, SGI
Implementor:C
Year:1986
Author:Barry Vercoe (MIT)
Description:Csound is a popular and widely used software synthesis package in the tradition of so-called music-N languages, among which the best-known is Music V. It consists of an orchestra- and score-driven executable, written in C for portability. Basically Csound reads some files and creates the result as a soundfile on disk or, on faster machines, realtime through a DAC.
ID:50
CYBIL
Composer/Designer:SGI
Year:1995
Author:Alexandre Burton and Jean Piche
Description:CYBIL is a compositional language for the efficient specification of arbitrarily complex Csound scores. It is integrated into CECILIA and can be used to generate scores for any kind of Csound orchestra. The syntax of CYBIL owes to Leland Smith's SCORE language and, to an extent, to Heinrich Taub's Common-Music. Scores are specified as parameter lines with the help of a number of data generators such as sequences, masks, lines and exponentials. These generators can be further modified by the use of functions such as random, urns and constrained random and parameters cross-referencing.
Manipulation:Csound scores
ID:77
DCMP
Composer/Designer:IBM 360
Implementor:Fortran IV
Author:Grossi, Paoli, Sommi
ID:20
EEL2/JSFX
Composer/Designer:Unix
Implementor:C
Year:2006-2018?
Author:Reaper
Description:JSFX audio effects for Reaper are written in EEL2, a scripting language that is compiled on the fly and allows you to modify and/or generate audio and MIDI, as well as draw custom vector based UI and analysis displays. EEL2 is based on AVS's EEL. AVS is a programmable visualization plugin for Winamp
Reference:https://www.cockos.com/EEL2/
Manipulation:Audio,MIDI
ID:151
Elody
Composer/Designer:Mac OS, Windows
Implementor:Java
Year:1998
Author:Fober, Letz, Orlarey
Description:Elody is a music composition environment that proposes Lambda-abstraction on musical structures as a fundamental mechanism to represent user-defined programs
Reference:[Orlarey, Fober, Letz, Bilton 94]."Lambda Calculus and Music Calculi" Proc. ICMC 1994
Manipulation:MIDI
ID:113
FAUST
Composer/Designer:Linux, Mac, Windows, and many more target environments (iOS, Android, VST, AU, lv2, JACK-GTK, JACK-QT, CoreAudio-QT, ...).
Implementor:C++
Year:2004
Author:Yann Orlarey, Dominique Fober, Stephane Letz, and various contributors
Description:FAUST (Functional Audio Stream) is a functional programming language specifically designed for real-time signal processing and synthesis. A distinctive characteristic of FAUST is to be fully compiled. The FAUST compiler translates DSP specifications into very efficient C++ code that works at sample level. The generated code is self contained and doesn't depend on any library or runtime. Moreover a same FAUST specification can be used to generate native implementations for most OS (Linux, OSX, Android, iOS) or platforms (LV2, Ladspa, VST, PD, Csound, SC,..) Faust distribution can be downloaded at: http://sourceforge.net/projects/faudiostream The GIT repository can be cloned with the following command : git clone git://git.code.sf.net/p/faudiostream/code faust
Reference:http://faust.grame.fr/index.php/documentation
Manipulation:Audio, with OSC control support.
ID:149
Flavors Band
Composer/Designer:Lisp Machine
Implementor:LISP
Year:1984
Author:Christopher Fry
Description:Lisp-based language.
ID:47
FOIL (Far Out Instrument Language)
Composer/Designer:Touche
Implementor:Forth
Author:David Rosenboom,Lynx Crowe
ID:45
Foo
Implementor:Objective C, Scheme
Year:1994
Author:Gerhard Eckel
Description:The Foo environment consists of the Foo Kernel layer and the Foo Control layer. The Foo Kernel layer is implemented in Objective-C and is made accessible to Scheme through a set of types and primitives added to the Elk Scheme interpreter. The Foo Control layer is implemented in Scheme and OOPS, an object-oriented extension to Scheme. Whereas the Foo Kernel layer implements the generic sound synthesis and processing modules as well as a patch description and execution language, the Foo Control layer offers a symbolic interface to the kernel and implements musically salient control abstractions. The user interacts with the Foo environment by writing Scheme programs which eventually will define and execute synthesis patches in non-real-time.
ID:89
FORMES
Composer/Designer:DEC VAX
Implementor:Lisp
Year:1984
Author:Xavier Rodet, Pierre Cointe (IRCAM)
Description:Object-oriented language for music composition and synthesis, written in VLISP.
Reference:"Formes: Composition and Scheduling of Processes", X. Rodet & P. Cointe, Computer Music J 8(3):32-50 (Fall 1984).
ID:48
FORMULA
Composer/Designer:Atari, Mac
Implementor:Forth
Year:1991
Author:Dave Anderson (UC Berkeley) & Ron Kuivila (Wesleyan U)
Description:FORMULA is a language/multitasking OS for the Atari ST and Mac. It is based on (and built on top of) Forth. The basic idea of FORMULA is to represent music as cooperating processes. For instance, each part of a symphony might be a different process. Also, the generation of pitches, durations, velocities, and tempo can similarly be controlled by separate processes.
Reference:July 1991 IEEE Computer
ID:53
Fugue
Composer/Designer:Unix
Implementor:C + XLisp
Year:1988
Author:Roger B. Dannenberg, Chris Fraley
Description:Functional language for sound synthesis.
Reference:' Fugue: Composition and Sound Synthesis with Lazy Evaluation and Behavioral Abstraction', Proceedings of the 1989 International Computer Music Conference, also July 1991 IEEE Computer.
ID:60
GROOVE
Composer/Designer:Honeywel l DDP-224
Implementor:Fortran IV and assembler
Year:1968
Author:Mathews, Moore (Bell Labs)
Description:The first realtime interactive computer music performance and composition system.
Reference:Comm. Assoc. for Computing Machinery 13S:12
ID:6
Haskore
Implementor:Haskell
Year:1996?
Author:Paul Hudak
Description:Haskore is a collection of Haskell modules designed for expressing musical structures in the high-level, declarative style of functional programming. In Haskore, musical objects consist of primitive notions such as notes and rests, operations to transform musical objects such as transpose and tempo-scaling, and operations to combine musical objects to form more complex ones, such as concurrent and sequential composition. From these simple roots, much richer musical ideas can easily be developed.
Manipulation:MIDI
ID:72
HMSL
Composer/Designer:custom 68000, Amiga, Mac
Implementor:Forth
Year:1985
Author:David Rosenboom, Larry Polansky, Phil Burk
Description:HMSL (Hierarchical Music Specification Language) is an object-oriented software environment for experimental music composition, with an emphasis on real-time user-machine interaction.
Reference:Proceedings of the ICMC, 1985, 1987
ID:49
Hyperlisp
Implementor:Common Lisp
Year:1994
Author:Joe Chung
Description:Hyperlisp is a real-time MIDI programming environment embedded in Macintosh Common Lisp. The environment was developed specifically for the Hyperinstruments project at the MIT Media Laboratory, and is optimized for interactive systems which require fast response times. Hyperlisp provides two main services for the music programmer: routines for MIDI processing and primitives for scheduling the application of functions. Programs written in Macintosh Common Lisp can use these services for a wide variety of real-time MIDI applications.
Manipulation:MIDI
ID:82
IanniX
Composer/Designer:MacOS X / Linux
Implementor:C++
Year:2005
Author:La Kitchen / CCMIX
Description:A graphical editor for multidimensional and multi-formal scores, sort of poly-temporal meta-sequencer, based on the former UPIC created by Iannis Xenakis.
Reference:http://iannix.la-kitchen.fr/rapport_expertise.pdf
Manipulation:audio
ID:145
Interactive Music Control
Implementor:VBScript, JavaScript
Description:The Microsoft Interactive Music control is an ActiveX component used to create and play music dynamically on Web pages. It is used as an object within VBScript or JavaScript programs.
ID:79
Interactor
Author:Mark Coniglio and Morton Subotnick
Description:Interactor is a graphic authoring tool created by composers Mark Coniglio and Morton Subotnick that enables artists to realize realtime interactive performances based on MIDI.
Manipulation:MIDI
ID:83
INV
Composer/Designer:Unix
Implementor:C
Year:1978
Author:Curtis Abbott (IRCAM)
ID:37
invokator
Composer/Designer:Unix
Implementor:C
Year:1977
Author:C. Abbott
ID:28
JFugue
Composer/Designer:All OS's! Java is multi-platform
Implementor:Java
Year:2002
Author:David Koelle
Description:JFugue is a set of Java classes for music programming. It uses simple strings to represent musical data, including notes, chords, and instrument changes. JFugue also allows you to define music using patterns, and you can do interesting transformations on those patterns to come up with new musical segments that are derived from existing pieces of music. JFugue can write MIDI files. The JFugue webpage is full of clear examples and instructions. JFugue makes music programming incredible easy!
Reference:none
Manipulation:MIDI, and user-defined music string
ID:136
JMSL
Composer/Designer:Java Virtual Machine
Implementor:Java
Year:1998
Author:Nick Didkovsky, Phil Burk
Description:Java Music Specification Language (JMSL) is a programming environment for experiments in music performance, composition, and intelligent instrument design. Based on HMSL (Hierarchical Music Specification Language), JMSL is a Java package which affords the composer all the functionality of the Java programming language as well as the hierarchical structuring, scheduling, and philosophy of HMSL.
Manipulation:Midi i/o on PC and Mac, integrates with JSyn
ID:114
JSyn
Composer/Designer:Java
Implementor:C
Year:1997
Author:Phil Burk
Description:JSyn uses native methods written in 'C' to provide real-time audio synthesis for Java programmers. It is based on the traditional model of unit generators which can be connected together to form complex sounds. For example, you could connect a white noise generator to a low pass filter that is modulated by random ramp generators to create a wind sound.
Manipulation:Audio
ID:71
KeyKit
Composer/Designer:Win9x, WinXP, WinNT, Linux, Mac
Implementor:C
Year:1995
Author:Tim Thompson
Description:Interpreted multi-tasking awk-like language designed for MIDI algorithmic and realtime manipulation. Multi-window GUI with pull-off menus and buttons is implemented using the language, and includes a multi-track sequencer, and drum pattern editor. Source code for all tools is included and can be customized easily.
Manipulation:MIDI
ID:64
Keynote
Composer/Designer:Unix, Mac, Amiga
Implementor:C
Year:1990
Author:Tim Thompson
Description:Interpreted programming language and GUI, algorithmic and realtime MIDI processing, music editor written in Keynote itself, hence customizable, piano-roll style with pop-up menus. See also: KeyKit.
Reference:Keyboard Magazine, Nov, 1990
Manipulation:MIDI
ID:1
Kinetic Music Machine
Composer/Designer:DOS PC
Implementor:Written entirely in Assembler
Year:1990
Author:John Dunn
Description:Based on Music Box by the same author, it was enhanced and re-released as KMM
Manipulation:MIDI
ID:96
KyCE (Kymatica Compositional Environment)
Composer/Designer:Linux (ALSA,GTK+)
Implementor:C and Nasal
Year:2006
Author:Jonatan Liljedahl
Description:Object-oriented compositional environment based on Nasal, a clean and flexible dynamically typed scripting language with garbage collection. Suitable for live performance (real-time recompiling of objects), algorithmic composition and experiments.
Manipulation:Real-time ALSA event outputs (MIDI) and/or hardware through custom DAC interface
ID:142
Kyma
Composer/Designer:Mac, PC - Windows
Implementor:Smalltalk
Year:1986
Author:Carla Scaletti
Description:A language for specifying and manipulating sound. It is a visual language and is based on units called "sound objects" rather than the "notes" of standard music notation. Structures specified in Kyma can be compiled for real-time samples generation on a digital signal processor. Kyma is described in an issue of CMJ devoted to object-oriented music applications.
Reference:'The Kyma/Platypus Workstation,' Computer Music Journal, vol. 13, no. 2. 'Composing Sound Objects in Kyma,' Perspectives of New Music, vol. 27, no. 1
ID:55
Language
Composer/Designer:Computer or OS
Implementor:Implementation
Year:Year
Author:Author
Description:Description
Reference:Reference
Manipulation:Manipulates
ID:ID
Lilypond
Composer/Designer:Windows, OSX, Linux
Implementor:C,Scheme
Year:1992
Author:Jan Nieuwenhuizen, Han Wen Nienhuis (original authors), David Kastrup (active development)
Description:Lilypond is a program that typesets music from musical definitions.
Manipulation:text
ID:150
Loki
Composer/Designer:MS-DOS,MS-WINDOWS
Implementor:C
Year:1996
Author:Juniper Moon
Description:Loki is a text to MIDI converter. It was developed to help transcribe music to MIDI. It contains facilities to harmonise and manipulate melodies as well. The next release will provide interactive facilities. Shareware and Fun.
Manipulation:MIDI
ID:93
LOOM Language Of Objects Of Music
Composer/Designer:Amiga
Implementor:basic
Year:1993
Author:Paul Webb
Description:A visual programming language for defining algorithmic processes and composition structures
Manipulation:MIDI
ID:139
LPC
Composer/Designer:IBM 370
Implementor:Fortran IV
Year:1975
Author:Mian, Offeli
ID:21
ManuScript
Composer/Designer:Win/Mac
Implementor:like C++
Year:1998
Description:A simple CAL like language for manipulating MIDI and Sibelius specific data
Reference:I've a paper about that (Word format)..
Manipulation:Midi audio (specific to Sibelius notation software)
ID:111
MASC
Composer/Designer:Commodore C-64
Implementor:Forth
Year:1986
Author:Dan Kelley
Description:Forth-based program on Commodore C64.
Reference:Keyboard magazine, 1986?
ID:52
Max
Composer/Designer:Mac, Next
Implementor:C
Year:1986
Author:Miller Puckette (IRCAM) and David Zicarelli (Opcode Systems, Cycling 74)
Description:A graphical, object-oriented language in which precompiled input/output primitives of specific function can be 'patched' together graphically onscreen to create large interactive systems. Primarily but not exclusively MIDI-oriented. User primitives can be compiled in C.
Reference:Keyboard magazine, Feb. 1991
ID:61
McLeyvier Command Language
Composer/Designer:CPU: LSI 11/23, OS: RSX11M
Implementor:C
Year:1981
Author:David McLey (et al)
Description:Macro language for configuration and control of analog oscillators, filters, VCAs, LFOs, amp, mixer, etc., music notation, SMPTE sync, but especially rich in traditional compositional vocabulary. (Nestable) macros could be triggered by name, parameter value (e.g. pitch), time (abs or rel in min:sec:frames or measures:beats:ticks), controller activity, alphanumeric input. (No published documentation or description.)
Reference:McLey, David. 1981. McLeyvier instruction manual.
Manipulation:composition and computer-controlled analog synthesis
ID:118
MelrĹŤse
Composer/Designer:Windows, OSX
Implementor:Go
Year:2021
Author:Ernest Micklei
Description:MelrĹŤse is a tool to create and play music by programming melodies. It uses a custom language to compose notes and create loops and tracks to play.
Manipulation:MIDI
ID:155
MGP
Composer/Designer:PC at Windows platform.
Implementor:Visual Basic & Adaggio.
Year:1999
Author:Jordan Misja
Description:Based in the logic of the sentences and phrases construction of a musical part.
Manipulation:Text manipulation and midi production.
ID:116
MIDAS
Composer/Designer:Buchla 400,700
Implementor:Assembler, C
Author:Lynx Crowe
ID:127
MML
Composer/Designer:MSX BASIC
Implementor:Assembler
Year:1983
Author:Microsoft /ASCII Corp.
Description:MML is a Macro Music Language used by the BASIC interpreter on MSX home computers. It allows to define up to nine channels of MIDI or internal sounds (FM chips or AY-3-8910 chip).
Manipulation:MIDI / Internal Soundchips
ID:144
MODE
Implementor:Smalltalk
Year:1987
Author:Stephen Travis Pope
Description:The Musical Object Development Environment (MODE) is a Smalltalk-80 framework and tool kit for music description, score editing, interactive performance, and digital signal processing.
Reference:'Musical Object Development Environment (MODE)', Computer Music Journal, volume 16 number 3.
ID:81
MOM
Composer/Designer:HP2100A
Implementor:HP assembler
Year:1974
Author:G. Winham, M. Zuckerman (Princeton)
ID:17
Moxc
Composer/Designer:Mac, PC, Atari, Amiga
Implementor:C
Year:1984
Author:Dannenberg, R. B.
Reference:Proceedings of the 1986 International Computer Music Conference
ID:58
Moxie
Implementor:XPL
Year:1984
Author:Douglass J. Collinge
Description:Language for real-time computer music synthesis, written in XPL.
Reference:"Moxie: A Language for Computer Music Performance", D. Collinge, Proc Intl Computer Music Conf, Computer Music Assoc 1984, pp.217-220.
ID:90
MPL (Musical Program Library)
Composer/Designer:any OS with APL
Implementor:APL (a programming language)
Year:1974
Author:Gary Lee Nelson, TIMARA Deoartment, Oberlin College
Description:MPL is a collection of functions in APL that manipulate note and conductor data in matrices. Deveoped at Oberlin. Used extensively at U. Melbourne in Australia. Currently used only by the author on Mac OSX with APLX from microAPL in UK. Listen to Goss on http://www.timara.oberlin.edu/~gnelson/mp3s/Long.mp3s.html
Reference:MIDI and cmusic input
ID:147
MSP
Composer/Designer:MAC
Implementor:C++
Year:1998
Author:David Zicarelli
Description:MSP is a MAX extention application
Reference:ICMC
Manipulation:AUDIO/Synth
ID:119
MSQ
Composer/Designer:WINDOWS and others
Implementor:C
Year:1998
Author:Siegfried Koepf, Bernd Haerpfer
Description:THE MSQ PROJECT provides an open, easily readable and editable file format qualified for algorithmic manipulation and composition as well as for real time controlling MIDI instruments. The MSQ file format, a plain ASCII text file format, represents sequences of MIDI commands in strictly chronological order even when multiple MIDI tracks are present. It does not only allow the translation of MIDI files to some readable text but is a well defined and MIDI compatible file format itself.
Manipulation:MIDI
ID:123
Mup
Composer/Designer:DOS, Unix, Mac, Amiga, or any system with a C compiler
Implementor:C
Year:1992
Author:John Krallmann, Bill Krauss
Description:Creates high-quality PostScript or MIDI output from a text description of music. Available for DOS and UNIX, plus in source form for compiling on many other systems.
Manipulation:Creates PostScript or MIDI output from text input
ID:101
MUS10
Composer/Designer:PDP-10
Implementor:PDP 10 assembler
Year:1974
Author:David Poole
Description:A Music V implementation at heart. Leland Smith also a possible author. MUSCMP is another name used for this program, at CCRMA.
ID:16
MUS8
Composer/Designer:MITS Altair
Implementor:BASIC
Year:1976
Author:R. Boudinot
ID:26
MusBox or MBox
Composer/Designer:PDP 10
Implementor:SAIL
Year:1979
Author:Gareth Loy
Description:A music compiler for the Sampson box at CCRMA. Re-implemented as "Sambox", it was the primary music making program at CCRMA between 1979 and 1990.
Reference:Gareth Loy wrote a CMJ article on it.
Manipulation:audio
ID:98
MUSCMP
Composer/Designer:DEC PDP-10
Author:Tovar?
Description:A music compiler written by Tovar in the early 80's. A Music V implementation at heart.
ID:25
MUSIC 10
Composer/Designer:PDP-10
Author:J. Chowning, A. Moorer (Stanford)
ID:14
MUSIC 10
Composer/Designer:DEC PDP-11
Implementor:Macro-II
Year:1973
Author:Barry Vercoe (MIT)
ID:15
Music 11
Composer/Designer:PDP-11
Implementor:PDP-11 Assembler
Year:1973?
Author:Barry Vercoe
Description:A successor to Music 360, Music 11 was implemented at the MIT Experimental Music Studio around 1973-1975
Manipulation:audio
ID:115
MUSIC 360
Composer/Designer:IBM/360
Implementor:Fortran IV and 360 assembler
Year:1969
Author:Barry Vercoe (MIT)
ID:8
MUSIC 4B
Composer/Designer:IBM 360
Implementor:Fortran IV
Year:1964
Author:Godfrey Winham & Hubert Howe (Princeton)
ID:3
MUSIC 4BF
Implementor:Fortran IV
Year:1972
Author:Godfrey Winham and Hubert Howe (Princeton)
ID:10
MUSIC 4F ORPHEUS
Implementor:Fortran IV
Year:1967
Author:Arthur Roberts (Argonne National Laboratory)
ID:5
MUSIC 6
Author:(Stanford)
Description:This might be the early (ca 1968?) predecessor of MUS10. If so, it was written by David Poole, and must have been another Music V implementation.
ID:9
Music Box
Composer/Designer:IBM PC
Author:John Dunn
Description:Program by connecting icons, represented as ascii text on the IBM PC.
ID:84
Music Composition Language
Composer/Designer:Fairlight CMI 0S-9
Implementor:Forth
Year:1980
Author:Fairlight Instruments
Description:8-bit sampling, graphical additive synthesis and command line sequencing. Information able to be entered through keyboard or light-pen. 'Film Music Processor' allowed editing to be carried out in a variety of time codes, working in frames, music cues and sync points.
Reference:Fairlight CMI preliminary users manual 20-1-1980.
Manipulation:audio
ID:41
MUSIC I/II/III/IV
Composer/Designer:IBM 7094
Implementor:Assembler
Year:1957,1958,1960,1963
Author:Max Mathews (Bell Labs)
ID:2
MUSIC V
Composer/Designer:independent
Implementor:Fortran IV and assembler
Year:1969
Author:Max Mathews (Bell Labs)
Description:A widely distributed acoustic compiler.
ID:7
Music-1000
Composer/Designer:LSI-11
Implementor:LSI-11 assembler
Year:1978
Author:Dean Wallraff
Description:Score and orchestra language for DMX-1000 signal processor.
Reference:Computer Music Journal 3:4
ID:38
MUSIC7
Composer/Designer:PDP-8
Implementor:Fortran IV
Author:Lejaren Hiller (SUNY Buffalo)
ID:13
MusicDNA Composer
Composer/Designer:Cross-platform (web application)
Implementor:Perl
Year:2006
Author:Jason Rienzi
Description:MusicDNA Composer is a web-based application for the creation of tonal music. Composers use a simple API to create melodies, harmonies and counterpoint, from the simplest single-voice piano song all the way up to a symphony. Code is compiled into both MIDI and sheet music in PNG and PDF format, which can be downloaded or displayed directly through the browser. The output can therefore be easily synthesized or performed by instrumentalists. The language "knows" basic harmony and counterpoint, and can take care of much of the calculation necessary in programming if the composer chooses. Themes or melodies can be pulled out into functions and shared among composers, thus allowing them to collaborate in the same way that programmers do. Since the songs are stored on the MusicDNA servers, you can also edit your compositions from anywhere. The site also allows you to store MP3s, MIDIs, sheet music or other media, so that you may give out the URL to your creations.
Manipulation:MIDI, Sheet Music
ID:148
MusicKit
Composer/Designer:NeXTStep
Implementor:Objective C
Year:1988
Author:David Jaffe, Julius Smith
Description:The Music Kit is an object-oriented software system for building music, sound, signal processing, and MIDI applications in the NEXTSTEP programming environment. It has been used in such diverse commercial applications as music sequencers, computer games, and document processors. Professors and students have used the Music Kit in a host of areas, including music performance, scientific experiments, computer-aided instruction, and physical modeling.
Manipulation:MIDI, Audio
ID:75
MusicScript
Composer/Designer:linux
Implementor:MusicScript
Year:2000
Author:David Piott
Description:Music scripting language that creates an entire song from a script file.Unlike Csound, this is VERY simple to understand. Made by and for musicians!
Manipulation:audio
ID:121
MusicXML
Composer/Designer:Windows, Macintosh, Linux
Implementor:Visual Basic, C++, Java
Year:2000
Author:Michael Good
Description:MusicXML is a universal translator for common Western musical notation from the 17th century onwards. It is designed as an interchange format for notation, analysis, retrieval, and performance applications.
Reference:The Virtual Score, MIT Press, 2001
Manipulation:Finale files, XML, MuseData, other symbolic formats
ID:135
MUSIGOL
Composer/Designer:Burroughs B5500
Year:1966
Author:Donald McInnis, Paul S. Davis, William A Wulf (U. of Virginia)
Description:There was an Algol based language MUSIGOL fashioned after the Bell Labs MUSIC I-V programs. It was created at the University of Virginia. MUSIGOL ran on a Burroughs B5500 and used an Adage Ambilog 200 as a DAC.
ID:4
NetSound
Year:1996
Author:Michael Casey and Paris Smaragdis
Description:NetSound is a structured-audio compositor and synthesizer which renders sound in real-time using a variety of synthesis algorithms. It is being developed by the Machine Listening Group at the Media Lab.
Manipulation:Audio
ID:88
Nyquist
Composer/Designer:WindowsNT, Windows95, Macintosh, Irix, Linux, AIX, SunOS, Unix, Mach
Implementor:C
Year:1992
Author:Roger Dannenberg
Description:A functional programming language for composition and sound synthesis. Uses a Lisp syntax, a signal processing and signal representation core, and a rich semantics dealing with time and transformations.
Reference:Computer Music Journal, Fall 1997 (21:3)
Manipulation:Audio (and some MIDI)
ID:95
OpenMusic (OM)
Composer/Designer:Mac OS
Implementor:Common-Lisp
Year:1997
Author:Gérard Assayag and Carlos Agon with Olivier Delerue
Description:OpenMusic is a highly visual environment for the composer on the Macintosh. While drawing benefit from the huge amount of knowledge and experience gathered around the PatchWork software, OpenMusic implements a set of radically new features that make it a second generation compositional software. Based on Digitool Macintosh Common Lisp, OpenMusic provides a visual programming interface to Lisp programming as well as to CLOS (Common Lisp Object System). Thus OpenMusic is an Object Oriented (OO) environment. Objects are symbolized by icons that may be dragged and dropped all around. Most operations are then performed by dragging an icon from a particular place and dropping it to an other place. These places include the OpenMusic Workspace as well as the Macintosh finder itself. A lot of classes implementing musical data / behaviour are provided. They are associated with graphical editors and may be extended by the user to meet specifical needs. Different representation of a musical process are handled among which common notation, midi piano-roll, sound signal. High level in-time organisation of the music material is proposed through the " maquette " concept.
Manipulation:MIDI, audio, symbolic notation and ASCII files
ID:104
Opusmodus
Composer/Designer:Windows, OSX
Implementor:Lisp
Year:2014
Author:Marco Giommoni, Janusz Podrazik
Description:Opusmodus is aimed at composers of all kinds - of art music, concert music, choral music, film music, jazz, electroacoustic music, music for games and new media, songwriters. Opusmodus is a comprehensive computer-aided environment for the whole work of music composition a virtual space where a composer can develop ideas and experiments for projects large and small. Opusmodus allows you to explore more than one structure at the same time. It also allows the composer to study the interaction between the different structures with more meaningful outcome.
Manipulation:MIDI,OSC,MusicXML
ID:154
ORGANUM 1
Composer/Designer:IBM 370
Implementor:PL/I
Year:1974
Author:Tisato
ID:18
OSW - Open Sound World
Composer/Designer:Open source - all platforms
Implementor:TCL/TK
Year:2000
Author:Adriien Fried and then open source
Description:Open Sound World, or OSW, is a scalable, extensible programming environment that allows musicians, sound designers and researchers to process sound in response to expressive real-time control. OSW combines a familiar visual patching paradigm with solid programming-language features such as a strong type system and hierarchical name spaces. OSW also includes an intuitive model for specifying new components using a graphical interface and high-level C++ expressions, making it easy to develop and share new music and signal-processing algorithms.
Manipulation:Midi and Audio
ID:137
OUTPERFORM
Composer/Designer:PDP-11
Implementor:Fortran IV
Year:1972
Author:D. Jaeger, D. Lester (University of Toronto)
ID:11
PATCH
Composer/Designer:Buchla 300,400,500
Implementor:Assembler
Author:Lynx Crowe
ID:126
Patchwork
Composer/Designer:MAC OS
Implementor:Common-Lisp
Year:+/- 1990
Author:Mikael Laurson, Jaques Duthen and Camilo Rueda
Description:Patchwork is a graphical interactive environment for computer assisted composition which is aimed at helping composers generate, represent and manipulate musical material. Its general, extendible environment can be easily adapted to suit radically different aesthetic needs.
Manipulation:MIDI and symbolic notation
ID:103
Pcmusic
Composer/Designer:IBM PC
Year:1995
Author:F. Richard Moore
Description:pcmusic takes a text (ASCII) file written in the pcmusic input language and creates a soundfile (in .wav format) that corresponds to it. For this reason, pcmusic is a member of the class of programs sometimes known as "acoustic compilers". pcmusic is a version of the cmusic sound synthesis program for the IBM PC and compatibles.
Manipulation:Audio
ID:91
Petal
Composer/Designer:Unix, Linux, OpenVMS
Implementor:C
Year:1995
Author:Chris Cannam, Andy Green, Richard Bown and Guillaume Laurent
Description:Rosegarden is an integrated MIDI sequencer and musical notation editor. It is free software for Unix and X, running on systems such as Linux, FreeBSD and SGI IRIX, and now also on OpenVMS.
Manipulation:Notation, MIDI
ID:133
PILE
Composer/Designer:DEC PDP-15
Implementor:Macro
Year:1977
Author:Paul Berg (Inst. of Sonology, Utrecht)
ID:27
Pla
Implementor:SAIL
Year:1983
Author:Bill Schottstaedt (Stanford)
Description:High-level music programming language, written in SAIL. Includes concurrency bas ed on message passing.
Reference:"Pla: A Composer's Idea of a Language", B. Schottstaedt,Computer Music J 7(1):11-20 (Winter 1983).
ID:44
PLACOMP
Composer/Designer:PLATO (CDC)
Year:1978
Author:D. Murray, J. Beauchamp, G. Loitz (Univ. of Illinois)
ID:33
PLAY (PLAY1, PLAY2)
Composer/Designer:DEC PDP-11
Implementor:XPL
Year:1977
Author:Joel Chadabe & Roger Myers (NYSU Albany)
Description:Language for real-time music synthesis.
Reference:"An Introduction to the Play Program", J. Chadabe ete al, Computer Music J 2,1 (1978).
ID:32
PMML
Composer/Designer:Unix, DOS
Implementor:C
Author:Satoshi Nishimura
Description:PMML is a musical event description/manipulation language designed for computer-controlled performances with MIDI instruments. Direct music description, algorithmic composition, and music transformation are all supported.
Manipulation:MIDI
ID:131
POD6, POD7
Composer/Designer:HP-2116
Implementor:Fortran IV
Year:1973, 1975
Author:Barry Truax (Simon Fraser University)
Reference:Computer Music Journal 1:3
ID:24
PROD
Author:M. Green
ID:22
Pure Data (PD)
Composer/Designer:windows, linux, irix
Implementor:c or c++ (?)
Year:1997
Author:Miller Puckette
Description:a free real-time computer music software package resembling Max.
Manipulation:midi and audio
ID:132
Pyrite
Composer/Designer:Mac
Author:James McCartney
Description:A lisp-like object programming language implemented as an object to be used within the Max system.
ID:68
pysco
Composer/Designer:any supporting python and csound
Implementor:python
Year:1999
Author:Paul Winkler (slinkp@angelfire.com)
Description:A python module for generating and manipulating musical events. Output is currently only in csound sco format, but the goal of pysco is to support MIDI streams and files as well, and user-extensible support for other kinds of output.
Manipulation:csound scores
ID:120
Q
Composer/Designer:Linux, OSX, Windows
Implementor:C
Year:1991, 2002 (midi interface), 2003 (audio interface)
Author:Albert Graef
Description:Q is a modern functional programming language based on the term rewriting calculus. Programs are simply collections of equations which are used to evaluate expressions in a symbolic fashion. Q offers an elaborate interface to Grame's MidiShare, and also has a basic audio interface. The latter will be improved over time (additional modules for doing modular synth and dsp stuff are in the planning stage). The MidiShare interface already makes Q a nice environment for (realtime) MIDI programming.
Reference:http://www.musikwissenschaft.uni-mainz.de/~ag/q/q-midi/qmidi.pdf
Manipulation:MIDI, audio
ID:138
Quasimodo
Composer/Designer:POSIX
Implementor:C++
Year:1998
Author:Paul Barton-Davis
Description:Quasimodo is an advanced, real-time, extensible, MIDI-controllable environment for generating and processing audio and MIDI data. Quasimodo supports the Csound programming language, plugin opcodes, themeable graphics, a simple scripting language for user-interface design, and an intuitive graphical user interface for real-time manipulation. It supports both Csound scorefiles, real-time MIDI input, and its own user interface for playing audio and MIDI compositions.
Manipulation:audio and MIDI
ID:112
Ravel
Composer/Designer:IBM PC Atari ST
Implementor:C
Year:1988
Author:Jim Binkley
Description:A C-like MIDI programming language.
Reference:Keyboard magazine, Nov. 1988
Manipulation:MIDI
ID:62
Realtime Composition Library for MAX
Composer/Designer:Macintosh
Implementor:MAX, C
Year:1992 ff.
Author:Karlheinz Essl
Description:This library - a collection of patches for MAX (an interactive graphical programming environment for multimedia, music, and MIDI) - offers the possibility to experiment with a number of compositional techniques, such as serial procedures, permutations and controlled randomness. Most of these objects are geared towards straightforward processing of data. By using these specialized objects together in a patch, programming becomes much more clear and easy. Many functions that are often useful in algorithmic composition are provided with this library - therefore the composer could concentrate rather on the composition than the programming aspects. The Real Time Composition Library (RTC-lib) was developed during my extensive work on Lexikon-Sonate (1992 ff.), an interactive realtime composition for computer-controlled MIDI-piano. Regardless the fact that it was conceived for a concrete project it became more and more obvious that its functionalities are open and generic enough to be used by other composers in different compositional contexts. Although - from the theoretical point of view - based on paradigms which have been extracted from serial thinking - and its further developments until nowadays it does not force towards a certain aesthetic, but provides a programming environment for testing and developing musical strategies. Please note that "serial" has here another connotation than it normally has (especially in the US): "serial" here refers to a certain way of musical thinking rather then dodecaphonic techniques, which have been abandoned by the serial theory itself (cf. Gottfried Michael Koenig and Karlheinz Stockhausen).
Reference:http://www.essl.at/bibliogr/struktgen.html
Manipulation:MIDI, audio
ID:94
Sambox
Composer/Designer:PDP 10
Implementor:SAIL
Year:1979
Author:Bill Schottstaedt (bil@ccrma.stanford.edu)
Description:A re-implementation of MusBox, it was the primary music making program at CCRMA between 1979 and 1990.
Manipulation:audio
ID:99
SAOL (MPEG-4 Structured Audio Orchestra Language)
Composer/Designer:Portable (currently Unix, Linux, Win32 - embedded in future)
Implementor:Spec is implementation-independant
Year:1997-1998
Author:ISO MPEG, project led by Eric Scheirer
Description:SAOL is a music-synthesis and effects-processing language which is a component of the MPEG-4 standard (ISO/IEC 14496-3). It follows a Music-N paradigm, but has a number of novel extensions, most notably the ability to define new unit generators within the language. In MPEG-4, SAOL is used to transmit synthesis descriptions controllable with MIDI or by a new lightweight score format called SASL, and to transmit effects-processing algorithms which apply to natural (waveform-encoded) audio within the MPEG-4 audio scene.
Reference:Scheirer, E. D. 'SAOL: The MPEG-4 Structured Audio Orchestra Language". Proc ICMC 1998, Ann Arbor, MA. <br>Scheirer, E. D. 'The MPEG-4 Structured Audio Standard', in Proc. IEEE ICASSP, May 1998, Seattle, WA.<br>Scheirer, E.D. 'Structured Audio and Effects Processing in the MPEG-4 Multimedia Standard', to appear in ACM Multimedia Systems.
Manipulation:Audio
ID:78
Sapphire
Composer/Designer:Linux
Year:1995
Author:Jim Finnis, white@elf.dircon.co.uk
Description:An acoustic compiler - a program which takes a source file written in the sapphire programming language and generates a sample. Sapphire can create sounds of arbitrary complexity, although it may take several hours for it to do so. Think of it as a ray-tracer for noises.
Manipulation:audio
ID:97
Scala
Composer/Designer:Windows, Linux, Unix
Implementor:Ada
Year:1996
Author:Manuel Op de Coul
Description:Scala is an editor, librarian, and analysis tool for musical tunings. One can create, manipulate and combine scales in many ways using the Scala command language. It can also tune synthesizers and retune MIDI files.
Manipulation:Musical scales, MIDI
ID:124
SCRIPT
Composer/Designer:Synclavier
Implementor:XPL
Year:1984
Author:New England Digital Corp.
ID:46
SDIF
Composer/Designer:UNIX, Mac, PC
Year:1997
Author:Matthew Wright, Adrian Freed, David Wessel, et al
Description:The Sound Description Interchange Format (SDIF) is a recently adopted standard that can store a variety of sound representations including spectal, time domain, and higher-level models. SDIF consists of a data format and a set of standard sound descriptions and their official representation. SDIF is flexible in that new sound descriptions can be represented, and new kinds of data can be added to existing sound descriptions.
Manipulation:audio
ID:122
Silence
Composer/Designer:Windows, Linux
Implementor:Java 1.2
Year:1996
Author:Michael Gogins
Description:Silence is an extensible system for making music on computers by means of software alone. It implements Music Modeling Language (MML), which represents music as a directed acyclic graph of nodes that can be notes, groups of notes, transformations of notes, or processes generating notes. MML is to sounds as VRML is to pictures. Silence currently uses its own Java interface to Csound as a synthesis engine.
Reference:1998 ICMC
Manipulation:Csound scores/orchestras and MIDI
ID:110
SKINI
Composer/Designer:Win95, SGI/NeXT
Implementor:C
Year:1996
Author:Perry Cook
Description:Synthesis toolKit Instrument Network Interface - a language designed to be MIDI compatible and extend MIDI in incremental but profound ways. It uses text-based messages. SKINI was designed to be extensable and hackable for a number of applications: imbedded synthesis in a game or VR simulation, scoring and mixing tasks, real-time and non-real time applications which could benefit from a controllable sound synthesis, JAVA controlled synthesis, or eventually maybe JAVA synthesis.
ID:70
SMDL
Author:Stephen R. Mounce
Description:The Standard Music Description Language (SMDL) is defined (in ISO/IEC Draft International Standard 10743) as "an architecture for the representation of music information, either alone, or in conjunction with text, graphics, or other information needed for publishing or business purposes. Multimedia time sequencing information is also supported." SMDL is a HyTime application conforming to International Standard ISO/IEC 10744 Hypermedia/Time-based Structuring Language.
ID:87
SMOKE
Implementor:Smalltalk
Description:The Smalltalk music object kernel (Smoke) music representation language facilitates the formal description of low-level musical data such as note events, and also of higher-level structures such as chord progressions and musical form "objects." In object-oriented software terms, the representation is described in terms of software class hierarchies of objects that share state and behavior and implement the description language as their protocol.
Reference:"The SmOKe Music Representation, Description Language, and Interchange Format", roceedings of the 1992 International Computer Music Conference.
ID:80
Snd
Composer/Designer:SGI, Linux
Implementor:Lisp
Author:Bill Schottstaedt
Description:Snd is a sound editor modelled loosely after Emacs, and can be customized using an Emacs-lisp-like syntax
Manipulation:Audio
ID:86
SOUL (SOUnd Language)
Composer/Designer:https://soul.dev/lab/
Implementor:C++
Year:2016
Author:JUCE team at ROLI, led by Julian Storer
Description:SOUL is a language for audio development focused on portability and speed, but also on accessibility for audio enthusiasts and professionals. Conceived as "an audio equivalent of OpenGLSL or OpenCL", its goal is to produce audio programs than can run not only on the CPU but also on heterogeneous or remote hardware, without an impact on the complexity for the developer. Claiming that the CPU is not the best place to run these programs, the authors are confident that domain-specific hardware will be the future of sound programming, and accessible and portable tools to exploit these will be necessary. Like graphic shaders, SOUL programs run within another "host" application, that can be written with any language or framework without bearing on its performance. SOUL is currently in beta.
Reference:https://github.com/soul-lang/SOUL
Manipulation:Audio,MIDI
ID:152
SoundModel (CCPL)
Implementor:Common Lisp (KR extension)
Year:1993
Author:Peter Lunden
Description:Common Composer's Programming Language (CCPL) is a computer programming environment aiming at composers and researchers in the field of electroacoustic music. SoundModel is part of CCPL, does not depend on any particular synthesis method, and can be interfaced to many different methods as long as the parameters of the method are closely related to the acoustical result. The language can be used to describe a large universe of sonic-structures with complex dynamic behaviour and complicated interdependencies which makes it useful in a computer music environment.
ID:85
Speccy
Composer/Designer:ClojureScript/JavaScript/Web
Implementor:Clojure
Year:2020
Author:Chris McCormick
Description:Eight-bit algorave livecoding in ClojureScript
Manipulation:Audio
ID:153
SSP
Composer/Designer:PDP-15/20
Implementor:Macro-15
Year:1975
Author:G. M. Koenig (Inst. of Sonology, Utrecht)
ID:23
SSSP
Composer/Designer:Unix
Implementor:C
Year:1978
Author:Buxton et al. (University of Toronto)
Description:Structured Sound Synthesis Program.
Reference:Computer Music Journal 2:4, 3:4
ID:36
ST
Composer/Designer:IBM 360
Implementor:Fortran IV
Author:Xenakis (CEMAMu, Paris)
ID:19
STK (Synthesis Toolkit)
Implementor:C++
Year:1996
Author:Perry Cook
Description:Synthesis toolkit, a set of Unit Generator, Musical Instrument, and Performer Model Classes in C++.
Manipulation:Audio
ID:69
STORM
Composer/Designer:Buchla Thunder
Implementor:Assembler
Author:Lynx Crowe
ID:128
SuperCollider
Composer/Designer:PowerMac
Implementor:C++ and Smalltalk
Year:1996
Author:James McCartney
Description:SuperCollider is an environment for real time audio synthesis which runs on a Power Macintosh with no additional hardware. SuperCollider features: a built in programming language with real time incremental garbage collection, first class functions/closures, a small object oriented class system, a mini GUI builder for creating a patch control panel, a graphical interface for creating wave tables and breakpoint envelopes, MIDI control, and a large library of signal processing and synthesis functions. It is an extended version of Pyrite, but no longer runs under Max.
Manipulation:Audio
ID:67
SuperCollider Server
Composer/Designer:Macintosh OSX, Linux (Windows in development)
Implementor:C++
Year:2003
Author:James McCartney
Description:A successor to SuperCollider 2 for Macintosh OS9. Synthesis takes place in a separate process (the server), controlled by OSC messages generated by a client. Any software that can produce OSC messages can be used to control the client, however. The library of sound-processing functions is now implemented as C++ plugins to the server, allowing users to write their own using the server API. SC Server includes a client whose language is similar to SC 2, but is extended with some borrowing from functional programming notation. It features powerful data manipulation classes and multi-threading for algorithmic composition. GUI, MIDI in/out, HID (joystick/other) input, Wacom tablet input are also supported. Optimized for real-time, live-performance scenarios.
Manipulation:Audio (some MIDI)
ID:143
Symbolic Composer
Composer/Designer:Atari
Implementor:Lisp
Year:1991
Author:Pekka Tolonen (igor@clinet.fi)
Description:SC allows the user to create music from almost any source: text, fractals, association-structures... in almost any style.... It is quite a difficult language to learn, but it offers almost endless possibilities.
ID:63
Symbolic Composer
Composer/Designer:Mac
Implementor:Lisp
Description:A language based on Lisp for symbolic manipulation of music, in terms of melodies, rhythms, notes, durations, harmonies, tonalities, chords, and intervals. Extremely rich in functionality. An example can be found at http://www-ks.rus.uni-stuttgart.de/people/schulz/fmusic/symbolic/example.html. An evaluation/review can be found at http://mars.let.uva.nl/ACCA/SymbolicComposer/s-com.htm.
Manipulation:MIDI
ID:66
SYMPFONICS
Implementor:Fortran IV
Year:1972
Author:B. Vassaur (U. of Tulsa)
ID:12
SYN4B
Composer/Designer:LSI-11/03
Implementor:LSI-11 assembler
Year:1978
Author:Neil Rolnick & Phillipe Prevot (IRCAM)
Reference:Computer Music Journal 2:2
ID:35
SynSeq.pm
Composer/Designer:Perl
Implementor:Perl
Year:2000
Author:kanak (kanak@perl.it)
Description:A perl module for music synthesis and sequencing.
Manipulation:audio
ID:125
SYNTA L-II
Composer/Designer:PDP-10
Implementor:Fortran IV
Year:1977
Author:Wayne Slawson (University of Pittsburgh)
ID:29
Tclmidi
Composer/Designer:Linux, Windows
Implementor:Tcl
Author:Mike Durian
Description:Tcl-based MIDI language, for creating and editing Standard MIDI Files.
Manipulation:MIDI
ID:92
TREE/COTREE
Year:1978
Author:Curtis Roads (MIT)
ID:34
UPIC
Author:Xenakis (CEMAMu)
ID:31
Virtual MIDI Machine
Composer/Designer:windows 95 - 98 - 2000 - XP
Implementor:C++
Year:2003
Author:Mark Meeus
Description:VMM is a programming language that allows you to send and receive raw midi messages and has built-in libraries for higher level MIDI functions. VMM makes Multithreading super easy, and that's what makes it so powerfull.
Manipulation:MIDI
ID:146
Zel
Composer/Designer:Windows
Year:1998
Description:Zel is a computer language for creating MIDI data. Its features include

-low language overhead--"a b c" plays a b c .
-powerful macro capabilities with parameter passing,
-automatic distribution of notes into multiple tracks,
-file inclusion,
-controller/tempo/velocity sequence generation,
-automatic pitch-bend generation,
-integer/fractional/decimal/MBT/SMPTE duration formats,
-fine control of note displacement,
-unlimited tracks,
-attribute inheritance ( track->chord->note )
-random or sequential pick from a list of weighted macros
-can automatically apply macro based on note timing
-sysex file inclusion and sub-parser
-musical thread isolation using parentheses
-looping
-define and transpose sets of notes and reference them
-supports MIDI text and meta-events
Manipulation:MIDI
ID:109

156 entries shown.