;;; English number words ;;; Returns nil if n < 0. (defun full-words (n) (cond ((< n 0) nil) ((< n 10) (digit-word n)) (t (concatenate 'string (full-words (floor n 10)) "-" (digit-word (mod n 10)) ) ) ) ) (defun digit-word (n) (elt '("zero" "one" "two" "three" "four" "five" "six" "seven" "eight" "nine") n) )