[slime-devel] Re: in-package at REPL?

Peter Seibel peter at javamonkey.com
Thu Jul 15 05:02:03 UTC 2004


Peter Seibel <peter at javamonkey.com> writes:

> Nikodemus Siivola <tsiivola at cc.hut.fi> writes:
>
>> On Wed, 14 Jul 2004, Peter Seibel wrote:
>>
>>> Hmmm. I don't think I explicitly deleted any packages but I may have
>>> reevaluated various DEFPACKAGE forms. Mightn't that sometimes cause an
>>> implicit DELETE-PACKAGE? Or something that would confuse SLIME in the
>>
>> It _would_ be legal, since the consequences are undefined if a defpackage
>> form that is at variance with the current state of the package is
>> evaluated... but that sounds like a fairly inhospitable way to go about
>> things, so I'd be a tad surprised if some implementation does that.
>>
>> I think it's just Slime getting out of synch when eg. package nicknames
>> change, as it seems to be holding on to the package name, not the object
>> (which would preserve identity across renames):
>>
>>  CL-USER> (defpackage :temporary (:use :cl) (:nicknames :tmp))
>>  #<PACKAGE "TEMPORARY">
>>  CL-USER> (in-package :tmp)
>>  #<PACKAGE "TEMPORARY">
>>  TMP> (rename-package :temporary :temporary) ; remove nickname
>>  #<PACKAGE "TEMPORARY">
>>  TMP> (find-package :tmp) ; really gone
>>  NIL
>>  TMP> *package* ; so where are we really....
>>  #<PACKAGE "COMMON-LISP-USER">
>>  TMP> (in-package :cl-user)
>>  #<PACKAGE "COMMON-LISP-USER">
>>  TMP>
>
> Okay, now I'm afraid I dorked something up with my change the other
> day to abbreviate the package name in the prompt. Namely I'm afraid
> that somewhere SLIME is using the abbreviated name, which is not
> necessarily a real package nickname, as the name of the package. Can
> someone explain the basic theory of how SLIME thinks about packages?

I just checked in a change that adds a new SLIME connection var
slime-lisp-package-prompt-string which holds the name used by the
prompt which may or may not be an actual package name or nickname. I
don't know if this was the root of my earlier problems but it can't
have been good before that slime-lisp-package was sometimes not a real
package name.

-Peter

-- 
Peter Seibel                                      peter at javamonkey.com

         Lisp is the red pill. -- John Fraser, comp.lang.lisp





More information about the slime-devel mailing list