Path: utzoo!utgpu!jarvis.csri.toronto.edu!rutgers!sun-barr!ames!lll-winken!uunet!yale!Duchier-Denys From: Duchier-Denys@cs.yale.edu (Denys Duchier) Newsgroups: comp.emacs Subject: Re: apply, mapcar, lack of setenv Keywords: Emacs-lisp, hacking, environment Message-ID: <62353@yale-celray.yale.UUCP> Date: 2 Jun 89 15:21:13 GMT References: Sender: root@yale.UUCP Reply-To: Duchier-Denys@cs.yale.edu (Denys Duchier) Distribution: comp Organization: Computer Science, Yale University, New Haven, CT 06520-2158 Lines: 16 In-reply-to: csuwn@cu.warwick.ac.uk (Max) (defun reduce (fun val lst) (while lst (setq val (funcall fun cal (car lst)) lst (cdr lst))) val) (reduce (function (lambda (x y) (or x y))) (mapcar )) (reduce '* 1 '(1 2 3 4 5)) => 120 ;(i.e. 5!) Also check cl.el for functions: some, every, notany, notevery if has no side effects: (some ) you need to define MAINTAIN_ENVIRONMENT in order to get all the environment goodies like setenv. --Denys