Re: SWANK defines defstructs in the keyword package
Stas Boukarev <[email protected]> Mon, 3 Jul 2017 20:04:46 +0300
| Newsgroups | gmane.lisp.slime.devel |
|---|---|
| Message-ID | <CAF63=12qbWeNTWNwJOnidfAmeLQ3jLjxqAtgi6RpZ9NeuvuHgw@mail.gmail.com> |
I'd apply a patch that performs this. On Mon, Jul 3, 2017 at 7:52 PM, Martin Simmons <[email protected]> wrote: > Hi, > > swank/backend.lisp defines some defstructs in the keyword package: > > (defstruct (:location (:type list) :named > (:constructor make-location > (buffer position &optional hints))) > buffer position > ;; Hints is a property list optionally containing: > ;; :snippet SOURCE-TEXT > ;; This is a snippet of the actual source text at the start of > ;; the definition, which could be used in a text search. > hints) > > (defstruct (:error (:type list) :named (:constructor)) message) > > ;;; Valid content for BUFFER slot > (defstruct (:file (:type list) :named (:constructor)) name) > (defstruct (:buffer (:type list) :named (:constructor)) name) > (defstruct (:etags-file (:type list) :named (:constructor)) filename) > > ;;; Valid content for POSITION slot > (defstruct (:position (:type list) :named (:constructor)) pos) > (defstruct (:tag (:type list) :named (:constructor)) tag1 tag2) > > > This is generally a bad idea because it can lead to clashes in the namespace > of structure names (as used by the :include option). > > AFICS, except for "location", these definitions are never used because they > are always constructed using backquote or list. > > Would you consider removing the defstructs and adding defuns for make-location > and its readers? > > -- > Martin Simmons > LispWorks Ltd > http://www.lispworks.com/ > -- With best regards, Stas.