[slime-cvs] CVS update: slime/slime.el

Helmut Eller heller at common-lisp.net
Tue Nov 9 10:23:34 UTC 2004


Update of /project/slime/cvsroot/slime
In directory common-lisp.net:/tmp/cvs-serv23734

Modified Files:
	slime.el 
Log Message:
(slime-eval-feature-conditional): Convert AND, OR, and NOT to
lowercase keywords.

(slime-net-read3): Silly optimization: use give char-after the offset
as argument to avoid save-excursion and forward-char.
Date: Tue Nov  9 11:23:33 2004
Author: heller

Index: slime/slime.el
diff -u slime/slime.el:1.418 slime/slime.el:1.419
--- slime/slime.el:1.418	Sun Nov  7 16:07:00 2004
+++ slime/slime.el	Tue Nov  9 11:23:30 2004
@@ -1551,10 +1551,9 @@
 
 (defun slime-net-read3 ()
   "Read a 24-bit big-endian integer from buffer."
-  (save-excursion
-    (logior (prog1 (ash (char-after) 16) (forward-char 1))
-            (prog1 (ash (char-after) 8)  (forward-char 1))
-            (char-after))))
+  (logior (ash (char-after 1) 16)
+          (ash (char-after 2) 8)
+          (char-after 3)))
 
 (defun slime-net-enc3 (n)
   "Encode an integer into a 24-bit big-endian string."
@@ -3905,10 +3904,10 @@
   "Interpret a reader conditional expression."
   (if (symbolp e)
       (memq (slime-to-feature-keyword e) (slime-lisp-features))
-    (funcall (ecase (car e)
-               ((and AND) #'every)
-               ((or OR) #'some)
-               ((not NOT) (lambda (f l) (not (apply f l)))))
+    (funcall (ecase (slime-to-feature-keyword (car e))
+               (:and #'every)
+               (:or #'some)
+               (:not (lambda (f l) (not (apply f l)))))
              #'slime-eval-feature-conditional
              (cdr e))))
 





More information about the slime-cvs mailing list