opmo Posted April 18, 2017 Share Posted April 18, 2017 New: additional keyword :map in TEXT-TO-PITCH, LETTER-TO-INTEGER and INTEGER-TO-LETTER. --------------------------------------------------- TEXT-TO-PITCH Example with a defined :map (setf map (gen-combine (make-alphabet) (gen-integer-step 0 26 '(1 -2 3 1)))) => ((a 0) (b 1) (c -1) (d 2) (e 3) (f 4) (g 2) (h 5) (i 6) (j 7) (k 5) (l 8) (m 9) (n 10) (o 8) (p 11) (q 12) (r 13) (s 11) (t 14) (u 15) (v 16) (w 14) (x 17) (y 18) (z 19)) (text-to-pitch '("To be, or not to be, that is the question") :map map) => ((d5 gs4) (cs4 eb4) (gs4 cs5) (bb4 gs4 d5) (d5 gs4) (cs4 eb4) (d5 f4 c4 d5) (fs4 b4) (d5 f4 eb4) (c5 eb5 eb4 b4 d5 fs4 gs4 bb4)) --------------------------------------------------- LETTER-TO-INTEGER (letter-to-integer '(a b c f g h) :map '((a 0) (b 6) (c 13) (f -11) (g -13) (h 2))) => (0 6 13 -11 -13 2) --------------------------------------------------- INTEGER-TO-LETTER (integer-to-letter '(0 1 2 5) :map '((0 a) (1 c) (2 e) (5 g))) => (a c e g) --------------------------------------------------- Fix to MAKE-OMN length-symbol conversion. Quote Link to post Share on other sites
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.