Strasheela Examples

This page lists several Strasheela examples. In order to serve as demonstrations, these examples are relatively simple. Nevertheless, diverse musical styles are shown. For each example, its music theory model is briefly explained, musical output is presented, and the full Strasheela source code is provided. The output of the examples is presented in common music notation and as sound (simply click on the music notation — after you have your browser configured to handle mp3 files). What is shown is the unaltered output of the Strasheela programs (sometimes, the presentation was improved, for example, the score layout was edited, or some analytical information was added). The source code contains detailed comments which explain not only the music theory model, but implementational details as well.

Musical constraint satisfaction problems (CSP) usually have multiple solutions. For most examples, only the first solution is shown. Most examples were generated by a randomised search process (cf. the examples' source).

NEW: MEWER (MEWsician's Exercises for Rhythms)

All-Interval Series

Fuxian First Species Counterpoint

Florid Counterpoint

Automatic Melody Harmonisation (Analysis)

NEW: Schoenberg's Theory of Harmony

A Collection of of Harmonic Constraint Satisfaction Problems

Microtonal Chord Progression

Harmonised Lindenmayer-System

Rhythmical Patterns

Realtime Constraint Programming: Counterpoint

Many More Examples

Please note that most of these examples implement (parts of) music theories which are described in detail by the literature. Implementations of such existing theories are obviously more easy to explain, because the reader can be pointed to the relevant literature — and many will know this literature anyway. Moreover, such implementations demonstrate that Strasheela is capable of modelling `real-world music theories'.

Existing theories have a tendency towards traditional music, and so have the examples presented here. Nevertheless, Strasheela is not limited to traditional music concepts. For example, the microtonal chord progressions shown above go beyond the scope of conventional harmony. Also, the use of algorithmic composition techniques like a Lindenmayer-System does not necessarily result in conventional music.

Strasheela was designed to make it more easy for you to implement your own music theory model. If you developed a new example with Strasheela which you want to share — be it traditional or not — then I am happy to include your example in this list. Just contact me via the Strasheela mailing list.