#title Strasheela #desc Strasheela is a constraint-based computer aided composition system. ; #author Torsten Anders [[http://www.torsten-anders.de][Torsten Anders]] [[StrasheelaImageSource][./graphics/Stasheela.jpg]] *Strasheela* by Leonid Vladimirsky[1] Strasheela is a highly expressive constraint-based music composition system.[2] The Strasheela user declaratively states a music theory and the computer generates music which complies with this theory. A theory is formulated as a constraint satisfaction problem (CSP) by a set of rules (constraints) applied to a music representation in which some aspects are expressed by variables (unknowns). Music constraint programming is style-independent and is well-suited for highly complex theories (e.g. a fully-fledged theory of harmony). User-interface is the programming language Oz. The results can be output into various formats including MIDI, Csound, and Lilypond. * News For the lates changes check the [[http://apps.sourceforge.net/trac/strasheela/timeline][Trac Timeline]] *30 April 2012*: [[https://sourceforge.net/projects/strasheela/][Strasheela 0.10.1 released]]
This is the first release within the last three years. Several important extensions have been added. For example, constraints are available that control the rhythmic accent of notes (their rhythmic weight) depending on a wide range of musical features, including differences in duration, pitch intervals, presence of an anacrusis etc. The metric position of notes can depend on their accent in various ways. Texture constraints control whether a musical section is, say, homophonic, quasi-homophonic, homo-directional etc. Arbitrary regular temperaments including extended just intonation are now supported. Many further features were added, and bug fixes have been made as well (see [[Changes]]). *28 December 2011*: Since its last release in 2009 the development of Strasheela has somewhat slowed down. I have now various other responsibilities as a father of twins on the on hand, and as lecturer and course leader on the other hand. Nevertheless, work on Strasheela is still ongoing. I just added several recent Strasheela-related papers including 4 Journal articles to the list of [[Publications]]. I also used Strasheela for [[http://cmr.soc.plymouth.ac.uk/tanders/music.htm][several recent compositions]]. Also, several important extensions have meanwhile been added to the code repository, including texture constraints (controls whether a musical section is, say, homophonic, quasi-homophonic, homo-directional etc.); constraints on rhythmic accents (controls the rhythmic weight of notes depending on a wide range of musical feature -- including relative duration, pitch intervals, presence of an anacrusis ++ and the relation between rhythmic weights and metric positions); and support for arbitrary regular temperaments including extended just intonation. *28 March 2009*: [[https://sourceforge.net/projects/strasheela/][Strasheela 0.9.10 released]] ([[Changes]]) [[OldNews][Old news]] * Background Information [[StrasheelaMotivation/index.html][Motivation]] ; **TODO:** Overview / Features ; [[Overview]] ; [[Features]] [[Publications]] [[OzDocumentation][Oz Documentation]] [[http://strasheela.sourceforge.net/documents/TorstenAnders-PhDThesis.pdf][Strasheela Monograph]] (pdf) * Getting Started [[http://sourceforge.net/project/showfiles.php?group_id=167225][Download release]] [[http://strasheela.svn.sourceforge.net/viewvc/strasheela/trunk/strasheela.tar.gz?view=tar][Download current development snapshot]] [[Installation]] ; **TODO** [[../examples/mini-tutorial.oz][Strasheela Tutorial]] -- midi tutorial in plain Oz code for now * Documentation [[StrasheelaTutorial][Strasheela Tutorial]] [[StrasheelaExamples][Strasheela Examples]] [[StrasheelaReference][Reference]] * Community [[https://lists.sourceforge.net/lists/listinfo/strasheela-users][Strasheela-users mailing list]] [[https://lists.sourceforge.net/lists/listinfo/strasheela-devel][Strasheela-developers mailing list]] [[Contributing]] * History The development of Strasheela began at the [[http://www.sarc.qub.ac.uk/][Sonic Arts Research Centre]] at [[http://www.qub.ac.uk/][Queen's University Belfast]] as part of the PhD of Torsten Anders. The development was continued at the [[http://cmr.soc.plymouth.ac.uk/index.html][Interdisciplinary Centre of Computer Music Research]] at the [[http://www.plymouth.ac.uk/][University of Plymouth]] (funded by the [[http://www.lestrum.org/Site/Welcome.html][Le StruM project]]), and presently at the [[http://www.beds.ac.uk/][University of Bedfordshire]]. ------------ [1] Illustration by Leonid Vladimirsky from: Alexandr M. Volkov (1939, revised in 1959). *The Wizard of the Emerald City*, Soviet Russia Publishers. [2] Strasheela is also the name of an amicable and stubby scarecrow in the children's novel [[http://emeraldcity.ru/eng/books.htm#volshebnik][The Wizard of the Emerald City]] by Alexandr M. Volkov, in which the Russian author retells *The Wonderful Wizard of Oz* by L. Frank Baum. The latter inspired the name for the programming language Oz, which forms the foundation for the Strasheela composition system. The scarecrow's brain consists only in bran, pins and needles. Nevertheless, he is a brilliant logician and loves to multiply four figure numbers at night. Little is yet known about his interest in music, but Strasheela is reported to sometimes dance and sing with joy.