projects
/
jscl.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
d31c3cd
)
return argument is optional and assoc uses non local exit
author
David Vazquez
<davazp@gmail.com>
Tue, 8 Jan 2013 19:29:20 +0000
(19:29 +0000)
committer
David Vazquez
<davazp@gmail.com>
Tue, 8 Jan 2013 19:29:20 +0000
(19:29 +0000)
ecmalisp.lisp
patch
|
blob
|
history
diff --git
a/ecmalisp.lisp
b/ecmalisp.lisp
index
51187e6
..
3033203
100644
(file)
--- a/
ecmalisp.lisp
+++ b/
ecmalisp.lisp
@@
-71,7
+71,7
@@
(defun null (x)
(eq x nil))
(defun null (x)
(eq x nil))
- (defmacro return (value)
+ (defmacro return (&optional value)
`(return-from nil ,value))
(defmacro while (condition &body body)
`(return-from nil ,value))
(defmacro while (condition &body body)
@@
-393,12
+393,11
@@
t))
(defun assoc (x alist)
t))
(defun assoc (x alist)
- (let ((found nil))
- (while (and alist (not found))
- (if (eql x (caar alist))
- (setq found t)
- (setq alist (cdr alist))))
- (car alist)))
+ (while alist
+ (if (eql x (caar alist))
+ (return)
+ (setq alist (cdr alist))))
+ (car alist))
(defun string= (s1 s2)
(equal s1 s2)))
(defun string= (s1 s2)
(equal s1 s2)))