[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

*PACKAGE* rebound by debugger



    Date: Sun, 29 May 88 11:40:35 CDT
    From:     flatau@CLI.COM (Arthur D. Flatau)

    Way back in Release 5, I think, it used to be the case that when you
    entered the debugger you remained in the package that PACKAGE was
    bound to.  In my opinion, this is the right thing to do.  Round about
    Release 6.0 (or maybe 6.1) the "feature" was added that reset PACKAGE
    when entering the debugger.  Since that time, I have had a hack in my
    init file similar to Barmar's to negate that "feature".

What if you happen to have 1*package*0 bound to, say, 1nil0 (so that the
printer always prints package prefixes), or the keyword package, or some
locked package, then you blow into the Debugger?  You can't even type
forms at the Debugger under those circumstances.

Adding the feature to Rel 6.0 was thoroughly and carefully discussed (but
maybe not as carefully implemented as one might like), and we believe that
it is the right thing.  The feature will not be going away.

    Date: Fri, 27 May 88 23:18:13 PDT
    From: gyro@kestrel.ARPA (Scott W. Layson)
       Date: Fri, 27 May 88 19:21 EDT
       From: barmar@Think.COM (Barry Margolin)
       Character-Type-Mappings: (1 0 (NIL 0) (NIL :BOLD NIL) "CPTFONTCB")
       Fonts: CPTFONT, CPTFONTCB

	   Date: Fri, 27 May 88 18:54 EDT
	   From: Scott McKay <SWM@sapsucker.scrc.symbolics.com>

	   All you, and probably Barmar too, are arguing for is having IN-PACKAGE
	   behave like PKG-GOTO.  I see nothing wrong with that.

       That would be fine with us.

    Motion seconded!  (Thirded?)

    While having IN-PACKAGE behave like PKG-GOTO is a step in the right
    direction, it does not help when debugging a program that runs in
    another package (and bind *PACKAGE* at its top level).  Everytime you
    enter the debugger you get CL-USER or whatever.  What is really needed
    is to make it easier to circumvent the "feature" described above, i.e.
    without modifying and/or advising functions.

Use 1sys:standard-value-let0 to bind 1*package*0 at top-level.  It's documented.