Further reduction of the test case:
(defun foocaps (s) (let ((p1 #'upper-case-p)) (funcall (lambda (g) (funcall p1 g)))) (let ((p2 #'(lambda (char) (upper-case-p char)))) (funcall p2 s)))
Further reduction of the test case:
(defun foocaps (s)
(let ((p1 #'upper-case-p))
(funcall
(lambda (g)
(funcall p1 g))))
(let ((p2 #'(lambda (char) (upper-case-p char))))
(funcall p2 s)))