(in-package #:p-n-f)

(defmacro print-name-of-function (str)
  (let ((name (map 'string #'(lambda (x)
			       (if (string= x " ")
				   #\-
				   x))
		   (remove-if-not #'(lambda (x)
				      (or (string= x " ")
					  (and (string<= "A" x)
					       (string<= x "Z"))))
				  (string-upcase str)))))
    `(defun ,(intern name) ()
       (princ ,str))))