[Advanced-readtable-cvs] r10 -
rklochkov at common-lisp.net
rklochkov at common-lisp.net
Sun Dec 30 14:24:44 UTC 2012
Author: rklochkov
Date: Sun Dec 30 06:24:44 2012
New Revision: 10
Log:
Fixed bug with push-local-package
Modified:
src.lisp
Modified: src.lisp
==============================================================================
--- src.lisp Sun Dec 23 02:43:24 2012 (r9)
+++ src.lisp Sun Dec 30 06:24:44 2012 (r10)
@@ -160,11 +160,16 @@
(defun read-after-colon (stream maybe-package colons)
"Read symbol package:sym or list package:(...)"
+ (declare (type symbol maybe-package)
+ (type stream stream)
+ (type fixnum colons))
(when (= colons 0) ; no colon: this is a symbol or an atom
(return-from read-after-colon
(if (symbolp maybe-package)
- (let ((name (symbol-name maybe-package)))
- (or (find-symbol name) (intern name)))
+ (prog1
+ (let ((name (symbol-name maybe-package)))
+ (or (find-symbol name) (intern name)))
+ (unintern maybe-package))
maybe-package)))
(let ((package (find-package maybe-package)))
@@ -286,7 +291,7 @@
after that reducers:... will refer to new package, not com.clearly-useful.reducers.
"
(%set-handler (package-finders package) `(:prefix ,prefix) name
- (cl:find-package (concatenate 'string prefix "." name))))
+ (cl:find-package (concatenate 'string (string prefix) "." name))))
(defun push-local-nickname (long-package nick
&optional (current-package *package*))
@@ -408,7 +413,7 @@
t *advanced-readtable*))))))
(set-syntax-from-char #\: #\Space *colon-readtable* *colon-readtable*)
- (set-macro-character #\( #'open-paren-reader))
+ (set-macro-character #\( #'open-paren-reader nil *advanced-readtable*))
(setf *readtable* *advanced-readtable*)))
(defun ! () (activate))
More information about the Advanced-readtable-cvs
mailing list