Hello, Thank you for your discussion, I have followed with interest, for functions pow2 and make-list-from, if you want, I offer both small simplifications...
(defun pow2 (x n)
(rem (/ (log (/ n x 1.0)) (log 2)) 1)
)
(defun make-list-from ( n l / x )
(cond
( (<= n 0)
nil
)
( (>= n (length l))
(setq x l)
(while (< (* (length x) 2) n) (setq x (append x x)))
(append x (make-list-from (- n (length x)) l))
)
( (setq l (reverse l))
(reverse (repeat (- (length l) n) (setq l (cdr l))))
)
)
)
Sincerely,