SWANK defines defstructs in the keyword package
Stas Boukarev
stassats at gmail.com
Mon Jul 3 17:04:46 UTC 2017
I'd apply a patch that performs this.
On Mon, Jul 3, 2017 at 7:52 PM, Martin Simmons <martin at lispworks.com> 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.
More information about the slime-devel
mailing list