.emacs-my
changeset 1018 94b0ca71a583
parent 1017 7b1ae3e0c9e3
child 1019 cbc477acb47e
--- a/.emacs-my	Sun Jan 13 15:57:08 2013 +0200
+++ b/.emacs-my	Sun Jan 13 16:20:55 2013 +0200
@@ -79,12 +79,13 @@
 
 (defmacro my-filter (pred list)
   "Construct list with elements from LIST which satisfy PRED."
-  `(let ( (r '(nil)) )
-     (mapc (lambda (item)
-             (when (,pred item)
-               (nconc r (cons item nil))))
-           ,list)
-     (cdr r)))
+  (let ( (r (make-symbol "r_")) )
+    `(let ( (,r (list nil)) )
+       (mapc (lambda (item)
+               (when (,pred item)
+                 (nconc ,r (cons item nil))))
+             ,list)
+       (cdr ,r))))
 
 (defun my-fold (f x list)
   "Recursively applies (F i j) to LIST starting with X.