sbclはランタイムある限りdescribeでソースの場所吐くね
#P"SYS:SRC;CODE;LIST.LISP"
のように
処理系、サード、自前でも任意のオブジェクトのパスを返す

ただし印字するだけで値で返してくれない、REPLから(ed *)でエディタに飛べたら便利なのに、惜しい…

(let ((*standard-output* (make-output-stream))
(describe 'funname)
(get-output-string-stream))

でとりあえずキャプチャはできそうだから、成形する関数をde/strと定義しておき

(ed (de/str 'fun))

で快適にREPLから読めると思います
(*ed-functions*の設定もよしなに)