Hi, all, Status update on SLIMPL / SLIM-Vim (http://wiki.alu.org/Perl_interface_to_SLIME):
SLIME sends code to Lisp via a macro called slime-rex (which uses a SLIME event called :EMACS-REX). I've implemented most of the infrastructure required for slime-rex, and hope to finish slime-rex itself soon (time permitting, in less than a week). After that, I'll start on the :RETURN event, which SWANK uses to send results back to SLIME. Once I get that finished, I'll probably do some code clean-up (structure it more like slime.el), write some documentation, and make SLIMPL available for download. slime-dispatch-event, the event handler for SLIME, handles 23 events, of which (in my opinion) :EMACS-REX and :RETURN are the most important. Once we get those two working, we can write some Vim-script to send code to Lisp and get results back. The other events deal with the debugger, which I'd probably target next, and other SLIME functionality which I don't know anything about (but will probably have to learn :). CALL FOR HELP: Emacs has an asynchronous interrupt facility, Vim doesn't. The closest things I can find in Vim to asynchronous interrupts are the CursorHold and RemoteReply events. Interested parties can poke around the Vim help files, source code, news groups, etc, and see if I've missed something, or think about how to implement some sort of poor-man's cooperative multitasking within Vim. For example, we might map the cursor movement keys (hjkl, etc) and all the normally-self-inserting keys (a-z0-9(), etc) to first call the SLIM-Vim event handler. Other suggestions welcome. If someone wants to dig around the Vim main event loop and figure out how to do a real periodic asynchronous event, that'd be way cool, too. Or perhaps we could piggyback on the Netbeans interface. (Of course, getting this into the main Vim distribution could take a while; I don't think we'd want the first line of installation instructions to read "first download the Vim source, patch it with this patch, and then compile it". :) I haven't investigated this much at all; for all I know people have been petitioning Bram to add an asynch interrupt to Vim for years and he's steadfastly refused; I dunno. -- Larry _______________________________________________ Gardeners mailing list [email protected] http://www.lispniks.com/mailman/listinfo/gardeners
