On Fri, Mar 28, 2014 at 06:28:54PM -0500, Peter Keller wrote:
> I'm using compiled from source sbcl 1.1.14 (with gcc 4.7.3-1ubuntu1)
> on an x86_64 linux mint 14 box.
>
> I ran into this problem:
> CL-USER> (defun word 42)
It was pointed off of list that I was abusing some things here (my
fingers typed something different than I was thinking), so here are
more correct cases that also fail. Notice I upgraded to sbcl 1.1.16
and the problem still exists.
Linux purple > sbcl
This is SBCL 1.1.16, an implementation of ANSI Common Lisp.
More information about SBCL is available at <
http://www.sbcl.org/>.
SBCL is free software, provided as is, with absolutely no warranty.
It is mostly in the public domain; some portions are provided under
BSD-style licenses. See the CREDITS and COPYING files in the
distribution for more information.
CL-USER> *package*
#<PACKAGE "COMMON-LISP-USER">
CL-USER> (defun word () 42)
debugger invoked on a SYMBOL-PACKAGE-LOCKED-ERROR in thread
#<THREAD "main thread" RUNNING {1002B4AEC3}>:
Lock on package SB-EXT violated when proclaiming WORD as a function
while in
package COMMON-LISP-USER.
See also:
The SBCL Manual, Node "Package Locks"
Type HELP for debugger help, or (SB-EXT:EXIT) to exit from SBCL.
restarts (invokable by number or by possibly-abbreviated name):
0: [CONTINUE ] Ignore the package lock.
1: [IGNORE-ALL ] Ignore all package locks in the context of this
operation.
2: [UNLOCK-PACKAGE] Unlock the package.
3: [ABORT ] Exit debugger, returning to top level.
(PACKAGE-LOCK-VIOLATION #<PACKAGE "SB-EXT"> :SYMBOL WORD :FORMAT-CONTROL
"proclaiming ~S as a function" :FORMAT-ARGUMENTS (WORD))
0]
And also:
Linux purple > sbcl
This is SBCL 1.1.16, an implementation of ANSI Common Lisp.
More information about SBCL is available at <
http://www.sbcl.org/>.
SBCL is free software, provided as is, with absolutely no warranty.
It is mostly in the public domain; some portions are provided under
BSD-style licenses. See the CREDITS and COPYING files in the
distribution for more information.
CL-USER> *package*
#<PACKAGE "COMMON-LISP-USER">
CL-USER> (defparameter word 100)
debugger invoked on a SYMBOL-PACKAGE-LOCKED-ERROR in thread
#<THREAD "main thread" RUNNING {1002B4AEC3}>:
Lock on package SB-EXT violated when globally declaring WORD SPECIAL
while in
package COMMON-LISP-USER.
See also:
The SBCL Manual, Node "Package Locks"
Type HELP for debugger help, or (SB-EXT:EXIT) to exit from SBCL.
restarts (invokable by number or by possibly-abbreviated name):
0: [CONTINUE ] Ignore the package lock.
1: [IGNORE-ALL ] Ignore all package locks in the context of this
operation.
2: [UNLOCK-PACKAGE] Unlock the package.
3: [ABORT ] Exit debugger, returning to top level.
(PACKAGE-LOCK-VIOLATION #<PACKAGE "SB-EXT"> :SYMBOL WORD :FORMAT-CONTROL
"globally declaring ~A ~A" :FORMAT-ARGUMENTS (WORD SPECIAL))
0]
And those should be legal to the best of my knowledge.