
These objects include audio and MIDI buses, data generators, envelope structures, and many other useful types. Fortunately Csound and Nasal are relatively simple languages to learn, and even a little familiarity will take you a long way into the possibilities of AlgoScore.ĪlgoScore's main display presents a time-line along which various objects will be ordered. Thus, unlike other programs that simplify Csound, AlgoScore requires some knowledge of computer programming. AlgoScore supplies graphic objects, but their ultimate content and shapes result from Csound and/or Nasal code (a Nasal interpreter is included with the package). I highly recommend as a starting point.ĪlgoScore is not a "graphical composition" environment, i.e., the sound is not created by the graphics per se. The space for this article forbids further discussion of algorithmic music, but a Google search for "algorithmic composition" yields plenty of material for study. a graphical environment for algorithmic composition, where music is constructed directly in an interactive graphical score.Īccording to the Wiktionary an algorithm isĪ precise step-by-step plan for a computational procedure that begins with an input value and yields an output value in a finite number of steps.Īlgorithmic music composition is the process of applying such computational procedures to generate values for the materials of music (pitches, dynamics, rhythm, instrumentation, form, et cetera). On the AlgoScore Web site Jonatan Liljedahl introduces his program as

AlgoScore's design recognizes and addresses the need for textual and visual tools appropriate to the task. The designs for most of these programs include minimal text entry and maximal use of the GUI's graphic tools. The GUI may be uncomplicated for simple launchers and single-purpose utilities, or it may be quite complex for more full-featured environments. Most of that software replaces the text interface with a GUI. Programmers have devised a variety of utilities and applications to alleviate the difficulties of working with Csound. For many new users this text-based interface is the environment's most frustrating aspect. Csound is a programming language with a text-based native interface, a fact that often results in much dismay to prospective users who have been attracted by the tempting descriptions of Csound's lavish resources.

Yet for all its considerable power, learning to use Csound can be especially troublesome to the novice. However, Jonatan recently took another look at the problem, resolved it (with a little help from Victor Lazzarini and other friends on the Csound Developers mail-list), and I can now compile and run AlgoScore with double-precision Csound.Ĭsound is an amazing environment for sound and music production and processing, with hundreds of functions and routines for bending, folding, and spindling your sonic masterworks in almost any way imaginable. My builds of Csound use double-precision numerics, and AlgoScore was not compatible with that build option. Alas, at that time I was unable to run AlgoScore on the machines here at Studio Dave.

Earlier this year I discovered Jonatan Liljedahl's AlgoScore, a Csound-based program for sound and music composition.
