Jump to content

Displaying Existing Libraries

Recommended Posts


Forgive me for these simple questions, but I'm curious to know what's the best way to display all the libraries I have?


For example, I'm now trying to build new libraries that includes ambituses of custom-built instruments I will use, rhythmic patterns I am developing, and modes/scales I will be using. 


I have the following questions:


1. I'm trying to understand the difference between library, def-library, and create-library. I am particularly interested in better understanding def-library and create-library. Are the two functions very different?


2. If I want to see all my rhythm libraries, for example, how can I see what I've already got on my computer?


Many thanks.

Link to post
Share on other sites


library is for accessing to a library.

def-library is for the definition of a library

create-library is a utility function helping for creating the content of a def-library.



Normally, if you put the library in the right place in the Opusmodus/Def-Libraries/Def-Library folder, you can see all of them in Opusmodus utility panel "L" (L for Library).





Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Similar Topics

    • By torstenanders
      Dear all,
      After updating to a recent Opusmodus version 1.3, I ran into some errors when loading code that had been loaded and compiled before, e.g., quicklisp, quicklisp libraries, swank (the interface that allows using Emacs Slime with Opusmodus), and my own Lisp libraries. The errors I saw were rather cryptic, like the following:
      Error: The value "CL" is not of the expected type list.
      While executing: (:internal ccl::operation-on-all-specs ccl::%define-package), in process Listener-1(7).
      After exchanges with Janusz (thanks a lot for your help!) I learnt that the underlying Common Lisp version of Opusmodus had been upgraded to CCL version 1.12, and the format of compiled files (fasl files or dx64fsl files) of this version had changed.
      So, in case you run into similar problems, these can be fixed simply by deleting all previously compiled files (which Lisp stores if they do not change to speed up the load process), so that the Lisp compiler has to compile them again. In the folder  ~/.cache/common-lisp just delete any folders starting with ccl-, so that all compiled files in this directory are compiled again.
    • By torstenanders
      Dear all,
      I am working on porting libraries from other algorithmic composition environments so that they are usable in Opusmodus. 
      The library Cluster Engine is a constraint solver for solving polyphonic constraint satisfaction problems where both the pitch and the rhythmic structure can be restricted by an arbitrary number of constraints (rules), and a constraint solver then searches for a solution that is consistent with all constraints. This library supports user-defined rules, and highly flexible ways to control which aspects of the resulting score are controlled by certain rules. For example, you can independently control with compositional rules the melody and harmony of the music you generate.
      The library Cluster Rules is extension of Cluster Engine that provides predefined rules and some utilities.
      Plain Common Lisp versions of these libraries are available at https://github.com/tanders/cluster-engine and https://github.com/tanders/cluster-rules, together with installation instructions etc.
      These libraries are very powerful, e.g., I use them to revise the underlying harmony of preexisting Opusmodus scores such that the result follows standard voice leading rules etc. 
      However, these libraries may be somewhat tricky to learn, in particular if you never before had any contact with constraint programming. I therefore recommend to start learning these libraries first in PWGL, where their documentation is better (they come with interactive tutorials). 
    • By Timothy Rolls
      I'm hoping someone on the forum can help me with this. Since the last update, on my laptop I am unable to use any of my spectral libraries I've created. The tbn-cs one that comes in the app still works, just the ones that I created are not found. I try recreating them and they seem to recreate fine, but after I restart Opusmodus, they still cannot be found. When I check my spectral-data/data and spectral-data/partials, I do see all the necessary files I have created. I think that is happening on my desktop machine, but I can't get to it right now to be sure (I think it was on the desktop that I first found my libraries not being found). However, on both machines, when I first start Opusmodus, I get the following error: 
      > Error: The function double is predefined by Opusmodus.
      > While executing: ccl::cerror-if-redefine-om, in process Opusmodus Extension Initialization(5).
      > Type cmd-/ to continue, cmd-. to abort, cmd-\ for a list of available restarts.
      > If continued: Replace the definition of double.
      > Type :? for other options.
      Afterwards, everything not related to my spectral libraries has seemed to run fine. 
      I have not created any extensions, and I cannot find in any of my work where I might have tried to define something as double. 
      I've tried reinstalling Opusmodus and it is not changing anything. 
      Does anyone have any ideas short of reinstalling OSX? I suppose that's a possibility, but I don't want to have to try that till there is no other choice. Thanks. 
  • Create New...