I suppose this may be too much hair or DWIM, but I've on occasion hoped that C-c C-c that would ignore toplevel #-/#+ as above, but take #. into account...
Example:
#.(let ((forms (loop for name in '(foo bar quux) collect `(defvar ,name)))) `(progn ,@forms))
Not pretty, but I did end up spending a while scratching my head, wondering why my changes didn't have the expected effect when working on a construct like this -- I did finally figure it out, and slime-eval-region does TRT here, so this is not critical.
Cheers,
-- Nikodemus