[slime-devel] What does swank do with streams?

mikel evins mevins at mac.com
Thu Jun 4 21:44:22 UTC 2009


On Jun 4, 2009, at 3:37 PM, Helmut Eller wrote:

> * mikel evins [2009-06-04 20:40+0200] writes:
>
>> When the CCL Cocoa app starts up, it also starts its glass TTY
>> process, AltConsole. It creates a socket pair, connecting  
>> AltConsole's
>> standard output, standard input, and standard error to one end of the
>> socket, and CCL's *TERMINAL-IO* to the other end. We require the
>> ability to guarantee the integrity of those stream connections. Is
>> there a way to guarantee that integrity when swank is loaded and a
>> server created? I'm perfectly willing to change CCL code or swank  
>> code
>> to accomplish it, if need be. One way or another, though, that
>> integrity is a requirement at our end.
>
> As long as you set swank:*globally-redirect-io* to nil (in  
> ~/.swank.lisp
> or before calling swank-loader:init) it should be pretty save to load
> Swank.  Setting swank:*global-debugger* to nil is probably also a good
> idea.  Additionally you can make swank::with-io-redirection a noop to
> prevent Swank from dynamically rebinding stream variables.  If all  
> this
> doesn't help than the problem is probably not related to Swank's
> streams.

Cool; thanks. After some further discussion, we're considering  
adopting a policy that makes use of AltConsole and Swank an either/or  
thing. In other words, if the user elects to load and start swank, we  
disable the AltConsole connection and assume that any non-Cocoa  
interaction with the Lisp will be through swank. We're hoping that if  
someone loads swank, they'll be comfortable using SLIME as the UI in  
cases where the Cocoa UI is wedged.

THanks for the respo0nses.

--me





More information about the slime-devel mailing list