From: Joel Reymont
Subject: excl:*cl-default-special-bindings*
Date: 
Message-ID: <1121893062.810933.319300@g49g2000cwa.googlegroups.com>
Folks,

What is the meaning of the initial bindings bit in the following chunk
code from Portable AllegroServe?

  ; create accept thread
  (setf (wserver-accept-thread *wserver*)
    (mp:process-run-function
     (list :name (format nil "aserve-accept-~d" (incf *thread-index*))
	   :initial-bindings
	   `((*wserver*  . ',*wserver*)
	     #+ignore (*debug-io* . ',(wserver-terminal-io *wserver*))
	     ,@excl:*cl-default-special-bindings*))
     #'http-accept-thread)))

Thanks, Joel
From: Edi Weitz
Subject: Re: excl:*cl-default-special-bindings*
Date: 
Message-ID: <uirz5w5o0.fsf@agharta.de>
On 20 Jul 2005 13:57:42 -0700, "Joel Reymont" <······@gmail.com> wrote:

> What is the meaning of the initial bindings bit in the following
> chunk code from Portable AllegroServe?
>
>   ; create accept thread
>   (setf (wserver-accept-thread *wserver*)
>     (mp:process-run-function
>      (list :name (format nil "aserve-accept-~d" (incf *thread-index*))
> 	   :initial-bindings
> 	   `((*wserver*  . ',*wserver*)
> 	     #+ignore (*debug-io* . ',(wserver-terminal-io *wserver*))
> 	     ,@excl:*cl-default-special-bindings*))
>      #'http-accept-thread)))

The CL cookbook chapter about threads (by Nick Levine), although
LW-specific, explains this quite nicely:

  <http://cl-cookbook.sourceforge.net/process.html#state>

Cheers,
Edi.

-- 

Lisp is not dead, it just smells funny.

Real email: (replace (subseq ·········@agharta.de" 5) "edi")