Jump to content


  • Content Count

  • Joined

  • Last visited

1 Follower

About torstenanders

  • Rank
    Senior Member

Contact Methods

Profile Information

  • Gender

Recent Profile Visitors

2,916 profile views
  1. If your goal is for you as a teacher to create documents for your students to read containing Common Lisp and Opusmodus code, and where you want to evaluate the code directly from within that document, then Org mode with embedded Common Lisp + Slime is your friend. This is a very powerful combination, that can automatically create nice slides (with the LaTeX beamer interface), embed music notation (Lilypond) etc. I used this combination for years for teaching, had then all sessions of a course in a single document for easily moving content around etc. Nevertheless, you likely do no
  2. Are these sessions somehow recorded for a record perhaps?
  3. The best document combining both worlds is likely the following. This was an internal textbook of the algorithmic composition teacher Paul Berg at the Sonology course at the Royal Conservatory of The Hague (the author of the composition system AC Toolbox, https://www.actoolbox.net), but it is unprinted, just a copy of a text processor document for internal use, and difficult to obtain (I only have a hard copy I got from a friend). Berg, Paul (n.d.) Elements of Design. An introduction to Programming with Common Lisp.
  4. http://www.gigamonkeys.com/book/ Common Lisp Books | Common Lisp LISP-LANG.ORG Books about Common Lisp For a more music-related introduction to Common Lisp you might want to look at the following books. These books teach algorithmic composition with Common Lisp. The above books introducing only Common Lisp are far more comprehensive on that matter, but you might prefer learning some foundations first within a musical context. Morgan, N. & Legard, P. (2015) Parametric Composition: Computer-Assisted Strategies for H
  5. These functions might try to solve similar problems, but internally they are very different. The build-in Opusmodus functions are internally deterministic, as far as I can tell (cannot see the code). By contrast, the function that calls the constraint solver cluster engine performs a search internally. Therefore, it can solve combinatorial problems better. You can impose pretty arbitrary additional constraints (restrictions) on the result such as counterpoint rules, e.g., how to resolve non-harmonic tones (e.g., you can allow for things like passing tones or auxiliary tones by di
  6. I love the focus on generating polyphonic results and the control over the resulting texture!! Great to see that the transformations (methods) used by the new counterpoint function are freely user-definable. That makes this very flexible. Also nice to see that it is accompanied by several convenient auxiliary functions. By contrast, while the polyphony function quasi enforces harmonic rules on the result (enforces certain harmonic intervals between voices), these harmonic rules are seemingly not user definable. The music constraint solver cluster-engine, which can be loaded into Op
  7. In case you have abstracts or even papers, that might be relevant to share at this forum, even if they are in Italian (though in case English would be available, that would be even better )
  8. Note that MOZ’Lib seemingly supports arbitrary libraries from the PatchWork / Open Music / PWGL family. Perhaps it is possible to see how they do that to add such functionality to Opusmodus as well? Best, Torsten PS: I was working in a similar direction some time ago, first by porting some library (OM-Tristan) to load directly into a plain Lisp compiler (by replacing all OpusModus dependencies) and that works, but that is a lot of work for each library. I then started to instead port the whole of OpenMusic to ClozureCL, but leaving out all GUI dependencies, but go
  9. Its a great development, but note that it will not work with Opusmodus for multiple reasons, one being that MOZ’Lib depends on SBCL [1], which is called from the shell, and Opusmodus depends on ClozureCL, and I don't think there are plans to make Opusmodus callable from a shell. [1]
  10. > Achim Bornhoeft and I spent some time talking and playing with the Neo-Riemann theory with an outcome of a diagram and a function Thanks for sharing. Do I understand correctly that these transformations always assume triads? Of course, one can always extend the triads afterwards... Best, Torsten
  11. Hi Julio, Could you perhaps share your final setup files for the old VSL instrument library with the community? Thanks! Best, Torsten
  12. > :path nil will give you the shortest path Nice.
  13. Nice! However, what happened to what Bruckner (according to Schönberg) called the "law of the shortest path" (Gesetz des nächsten Weges)? Of course, for expressiveness one should not always choose a "shortest path" voice leading, that tends to become boring. But here, there are predominantly skips. Steps should be more likely, at least that would be more common (e.g., more easy to perform and also to follow by the audience). Is there perhaps a way to control the likelihood of steps vs. skips? Thanks! Best, Torsten
  14. The code is impressively concise for this dense network of relationships
  15. Thanks a lot for working on this. Just to confirm: is the pitch resolution of the actual pitch parameter limited to expressing quarter and eighth tones and for other subdivisions articulations are used? The main/only advantage of 24-ET (equal temperament) and 48-ET is that they contain all 12 tones from 12-ET in the same "grey" approximation of just intervals (i.e. intervals that can relatively easily tuned by ear -- much more easily than anyhow tempered intervals) than 12-ET. They only add 11-limit intervals like 11/8 rather well (nicely used for that, e.g., by Wysch
  • Create New...