Omit condition from loop.
--- a/.emacs-my Sun Jan 13 15:01:14 2013 +0200
+++ b/.emacs-my Sun Jan 13 15:57:08 2013 +0200
@@ -77,16 +77,14 @@
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
(message "my defun, defmacro, defvar")
-(defmacro my-filter (condfunc list)
- "Construct list with elements from LIST which satisfy CONDFUNC."
- `(let (r)
+(defmacro my-filter (pred list)
+ "Construct list with elements from LIST which satisfy PRED."
+ `(let ( (r '(nil)) )
(mapc (lambda (item)
- (when (,condfunc item)
- (if r
- (nconc r (cons item nil))
- (setq r (cons item nil)))))
+ (when (,pred item)
+ (nconc r (cons item nil))))
,list)
- r))
+ (cdr r)))
(defun my-fold (f x list)
"Recursively applies (F i j) to LIST starting with X.