[slime-devel] [RfC] Reorganization of source

Tobias C. Rittweiler tcr at freebits.de
Sat Aug 11 12:32:48 UTC 2007


Hi,

I'd like to suggest a reorganization of the Slime sources. Some
not-so-long time ago, there has been some vague consensus of factoring
some parts of Slime out into a contrib/ directory. The intention of this
mail is to straighten out the vagueness while building upon the
consensus.

I propose:

  a) to introduce a new file `swank-utils.lisp' (and perhaps also
     `slime-utils.el') and collect common utility functions there in.

  Gripe: `swank.lisp' is currently almost 6000 lines long. As a
    result, it's very hard to get an overview of what's there already,
    and consequently what could be reused in other (or new!) parts.

    Also there's some stuff that can be very useful for foreign projects
    that perhaps would like to take advantage, but don't want all of
    SWANK (the arglist stuff comes to mind.)    


  b) to introduce a new directory `modules/' that contain self-contained
     subsystems. For instance:

         modules/
            inspector/

            fuzzy-compl/


     These subdirectories contain both Common Lisp and Elisp code. It's
     subject to further discussion what's the best way of loading these
     subsystems. Are there special requirements?

     The purpose is to reduce the line count of `swank.lisp' while
     aiding understanding by explicitely decoupling of independent
     subsystems. Also to establish the ground work for a plugin
     architecture if this deems useful.


  c) to introduce a new directory `backends/' and place all the
     `swank-sbcl.lisp', `swank-clisp.lisp' &c files there. This is
     merely for aesthetical reasons (less clutter in the main source
     directory) and hence rather optionally.

  -T.





More information about the slime-devel mailing list