bil@ccrma.Stanford.EDU skribis: > I did not remove it; for some reason it wasn't in the > directory I used to make the tarball. In order for the compilation of cmn to put the files in the standard locations used in GNU Guix, I changed the asd file to replace :components ((:file "cmn-all\" )) by :serial t :components ((:file "cmn-init") (:file "cmn-utils") (:file "cmn-objects") (:file "cmn0") (:file "cmn-grfx") (:file "cmn-glyphs") (:file "cmn1") (:file "cmn2") (:file "cmn3") (:file "cmn4") (:file "rqq") (:file "wedge") (:file "accent") (:file "pedal") (:file "percussion") (:file "ring") (:file "rests") (:file "lyrics") (:file "transpose") (:file "pmn") (:file "quarter")) and it almost works. The only issue making the compilation fail is a type error warning by sbcl, which I think is due to a bug in the program. In the IDENTIFY-SCORE function of the "cmn2.lisp" file, the TIED-TAG variable is defined by a "(find :tied-to (store-data object))" form, which means that TIED-TAG will be either :TIED-TO or NIL. However a few lines lower, the "(setf (second tied-tag) ...)" form indicates that TIED-TAG must be a non-empty list. From the surrounding code, I got the impression that "(store-data object)" probably contains lists, and that the definition of TIED-TAG should be something like (find :tied-to (store-data object) :key #'car) With this, the compilation succeeds with sbcl and ecl, and the little "(cmn treble c4 q)" example from the README file works. I don't know if you're interested in the modified asd file, we can keep it as a Guix-only thing anyway. However the TIED-TAG thing looks like an actual bug. What do you think?