[Openmcl-devel] Clozure Emacs/Slime problem in Win32

R. Matthew Emerson rme at clozure.com
Thu Jun 11 15:06:27 PDT 2009

On Jun 10, 2009, at 7:03 PM, Greg Santucci wrote:

> When I try (cl-glut-examples:gears) at the slime "inferior-lisp"  
> repl, the example runs normally. When I try it in the normal repl  
> buffer, it will work only if I did it in the "inferior-lisp" repl  
> first. If not, the window doesn't appear, and the repl says nothing.  
> I can't find any error messages or prompts in the other buffers. If  
> at the "inferior-lisp" repl I run another example, such as (cl-glut- 
> examples:rb-robot), suddenly both the robot and gears windows appear  
> and run normally.

I would expect that this is some sort of threading issue.  The repl in  
the *inferior-lisp* buffer is the initial thread.  I believe that the  
slime repl is a different thread.

Just as a wild guess, could it be due the issue with #_ShowWindow that  
is discussed in ccl:examples;mswin.lisp?

Quoting from a comment therein:

         ;; Depending on how the lisp process was created, the first  
         ;; to #_ShowWindow in that process might ignore its argument
         ;; (and instead use an argument specified in the STARTUPINFO
         ;; structure passed to #_CreateProcess.)  SLIME under FSF Emacs
         ;; runs the lisp with this flag set, and it's possible to waste
         ;; a week or two trying to track this down.  (Trust me.)
         (#_ShowWindow hwnd #$SW_SHOW)
         ;; In case the parent process said to ignore #_ShowWindow's  
         ;; the first time it's called, call #_ShowWindow again.  This  
         ;; to be harmless, if a little strange ...
         (#_ShowWindow hwnd #$SW_SHOW)

> Interestingly, this problem doesn't occur with lispbuilder-sdl  
> examples.

More information about the Openmcl-devel mailing list