cl-musicman top level

2006-03-06 17:23:00

Added a top level also changed chord-progressions from a plist to an associated list. This gets rid of the colons.

CL-USER> (music-theory:music-man)
[1] major-scale a

(A B (C# CB) D E (F# GB) (G# AB) A) 
[2] major-chord a

(A (C# CB) E) 
[3] chord-progression (I III V) a

(A (C# CB) E) 

I like this little bit of code in particular:

(defun quote-all (L)
    ((null L) '())
     (cons `',(car L) (quote-all (cdr L))))))

MUSIC-THEORY> (quote-all '(a b c (d e) f g h))
('A 'B 'C '(D E) 'F 'G 'H)

The code is here