(load (merge-pathnames "setup.lisp" *quicklisp-home*))
Minor nit: this code isn't compliant ANSI CL. (make-pathname :name "setup" :type "lisp" :defaults *quicklisp-home*) is the compliant version. Indeed, if *default-pathname-defaults* has non-null HOST and DEVICE that differ from *quicklisp-home*, you lose; and you can't explicitly specify :HOST NIL yourself, it's not portable.
And that's the reason for UIOP:MERGE-PATHNAMES* and UIOP:SUBPATHNAME; but you can't use them when ASDF isn't loaded yet.
—♯ƒ • François-René ÐVB Rideau •Reflection&Cybernethics• http://fare.tunes.org The hacker: someone who figured things out and made something cool happen. — Alan Schmitt