In quux-hunchentoot, I introduce a gf
(defgeneric start-thread (context thunk &key))
with a method
(defmethod start-thread ((taskmaster thread-pooling-taskmaster) thunk &key name) (declare (ignorable taskmaster)) (bt:make-thread thunk :name name))
that offers an extension point so that applications can specify bindings, handlers, etc., around the spawning of threads.
I believe this technique could be advantageously adopted by hunchentoot in general.
PS: if this reminds you of "interface-passing style", that's not a coincidence.
—♯ƒ • François-René ÐVB Rideau •Reflection&Cybernethics• http://fare.tunes.org You may call yourself athiest, but I'm athier than you are!