[slimpl] some comments about vim internals

Peter Seibel peter at gigamonkeys.com
Thu Mar 2 12:48:05 CST 2006


On Mar 2, 2006, at 10:34 AM, Dmitry Petukhov wrote:

>> As you say, most of the worker
>> code could live in the Swank image - maybe the Slime guys would be
>> amenable to that.
>
> i see one problem with that approach - swank code works within lisp
> image alongside the main program. It may be for example on a
> production server to which you connected with slime  from your desktop
> to trace some minor problem. I really wouldn't want any unnesessary
> code on a server side in this case.

Well, that's a possible problem. But it's at least worth looking  
into. Compared to the overhead of dealing with SLIME at all, I  
suspect that a little bit of string parsing or whatever is going to  
be lost in the noise. There's probably a lot more work that would  
need to be done to make SWANK a really acceptable piece of code to be  
running in a production server at all. Probably on a real production  
server you'd want an extremely stripped down and audited version of  
SWANK that supports just enough of the SLIME protocol to enable you  
to debug a problem. Or, if there' a big pile of Common Lisp code that  
you don't want running in your actual server, you could have a set up  
like this:

   +-------------+      +----------------+     +------------------+
   | Editor,     |<---> | SWANK FRONTEND |<--->| Your server with |
   | e.g. Emacs, |      | CODE written   |     | minimal SWANK    |
   | vim, AJAX   |      | in Common Lisp |     | protocol core    |
   +-------------+      +----------------+     +------------------+

where each box is a separate process. In a normal development  
environment the two Common Lisp processes could be merged while  
reusing almost all of the code. (You'd presumably change things so  
the SWANK frontend code would call directly into the protocol core  
rather than communicating over a socket.

-Peter

-- 
Peter Seibel           * peter at gigamonkeys.com
Gigamonkeys Consulting * http://www.gigamonkeys.com/
Practical Common Lisp  * http://www.gigamonkeys.com/book/




More information about the slimpl mailing list