diff options
author | Matthias Andreas Benkard <matthias@benkard.de> | 2008-07-30 21:20:07 +0200 |
---|---|---|
committer | Matthias Andreas Benkard <matthias@benkard.de> | 2008-07-30 21:20:07 +0200 |
commit | c5cd5ea26f92e0e22631f858293d36507909d0f6 (patch) | |
tree | 1645576f63ab5907642101dd710db35b1190459b /list-functions-2.lisp | |
parent | bae90539e72d2d52d48ccf6f70560bf42af2e546 (diff) |
Add prototypes of TAGBODY, GO, BLOCK, and RETURN-FROM.
Diffstat (limited to 'list-functions-2.lisp')
-rw-r--r-- | list-functions-2.lisp | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/list-functions-2.lisp b/list-functions-2.lisp index c8d4ccd..1c99a4e 100644 --- a/list-functions-2.lisp +++ b/list-functions-2.lisp @@ -84,8 +84,14 @@ (cons (apply function (mapcar1 'car lists)) (apply 'mapcar (list* function (mapcar1 'cdr lists))))))) +(defun maplist (function list &rest more-lists) + (let ((lists (list* list more-lists))) + (when (every1 'identity lists) + (cons (apply function lists) + (apply 'maplist (list* function (mapcar1 'cdr lists))))))) + (defun mapcan (function list &rest more-lists) (%append (apply 'mapcar (list* function list more-lists)))) (defun mapcon (function list &rest more-lists) - (apply (function mapcan) (list* function list more-lists))) + (%append (apply 'maplist (list* function list more-lists)))) |