2.3.6. Exkurs - Nützliche Funktionen von Common Music
(in-package :cm) (note 64) ;; -> E4 (keynum 'e4) ;; -> 64 (keynum 440 :hz) ;; -> 69 (note 440 :hz) ;; -> A4 (hertz 'a4) ;; -> 440.0 (hertz 69) ;; -> 440.0 (between 34 52) ;; -> irgendeine ganze Zahl zwischen 34 und 52 (between 34.0 52.0) ;; -> irgendeine Fließkommazahl zwischen 34.0 und 52.0 (shuffle '(1 2 3 4 5 6)) ;; -> ergibt neue Liste mit Listenwerten in ;; Zufallsreihenfolge (pick 1 2 3 4 5 6) (pickl '(1 2 3 4 5 6) :avoid 2) (odds 0.2) ;; -> durchschnittlich 1 von 5 Werten ist T, ansonsten sind alle Werte NIL. (ran :type :gaussian) ;; -> Zufallswerte mit verschiedenen Verteilungsmöglichkeiten ;;; Beispiel für 1000 Werte in Gausscher Normalverteilung: (loop for x below 1000 collect (ran :type :gaussian)) ;; Interpolation (interpl 50 '(0 0 100 1)) ;; -> 1/2 (interpl 50 '(0 0 100 1) :scale 2) ;; -> 1 (interpl 50 '(0 0 100 1) :scale 2 :offset 3) ;; -> 4 (interpl 175 '(0 0 100 1 200 0)) ;; -> 1/4