Hi. i wrote a snippet to do tracing of functions using slime presentations (thanks to segv for showing me the slime presentation features and writing present-object) . Obviously this code works only on sbcl.
(defun present-object (value &optional (stream *error-output*)) (swank::presenting-object value stream (prin1 value stream)) value)
(defmacro slime-presentation-trace (fun) `(trace ,fun :print (present-object (let ((args nil)) (handler-case (loop for i upfrom 0 do (push (sb-debug::arg i) args)) (sb-kernel::index-too-large-error (var) args)))) :print-after (present-object sb-debug:*trace-values*)))
Maybe an sbcl hacker can really improve and beautify this hack