From mira@cs.bgu.ac.il Tue Feb 18 12:16:34 2003 Date: Tue, 18 Feb 2003 10:16:14 +0200 (IST) From: mira balaban To: uyovel@walla.co.il Cc: Shai Shwartz , shlomiteshuva@hotmail.com Subject: Re: installation problem for cps course > We still have installation problems for the cps project. > We re-downloaded all the files as you told us. > However, executing the line: > (require-library "scale+chord-base.scm" "tonal-music-lib") > yields the error message: > reference to undefined identifier: tonal-pitch I just checked it. In the "add" procedure in the midi-base.scm: when I added the new tonal types to the arithmetic operations interface, I wrote "tonal-pitch" instead of "tonal-pitch?", which is the identification procedure for tonal-pitch values. That means that when this "add" was applied -- and probably it is applied when loading scale+chords-base.scm (for the definition of the scales and the chords) -- it tried to apply "tonal-pitch" to the argument instead of "tonal-pitch?". Now, since there is no procedure tonal-pitch (check it -- there is a type tonal-pitch, whose constructor is make-tonal-pitch, but if you just ask scheme for "tonal-pitch" you get: reference to undefined identifier: tonal-pitch tonal-pitch in UNKNOWN ), that's the reason for the message you got. So -- please replace "tonal-pitch" in "add" by "tonal-pitch?". The "add" code is: (define add (lambda args (dispatch-on-first-arg `((,pitch? ,pitch+interval) (,interval? ,+intervals) (,time? ,+times) (,time-interval? ,+time-intervals) (,time-point? ,+time-point-interval) (,duration? ,+durations) (,dynamics? ,+dynamics) (,number? ,primitive+) (,tonal-pitch-class? ,tpc+tic) (,tonal-interval-class? ,tic+tic) (,tonal-pitch? ,tp+ti) (,tonal-interval? ,ti+ti)) args 'add))) Plesae let me know if things are alright now. Anyway -- I lodaed scale+chords-base.scm smoothly. Mira