newLISP Fan Club

Forum => Anything else we might add? => Topic started by: Jeff on April 16, 2007, 06:18:13 PM

Title: Toy for rubyists
Post by: Jeff on April 16, 2007, 06:18:13 PM
(define-macro (each object iter)
  (set 'iter (trim (string iter) "|"))
  (dolist (obj (eval object))
          (eval (set (sym (eval iter)) obj))
          (catch (doargs (a)
                 (if (= a 'end) (throw nil) (eval a))))))

(each '(ruby is not a lisp) |item|
  (println item)
end)
Title: Re: Toy for rubyists
Post by: rickyboy on April 17, 2007, 04:12:38 AM
Quote from: "Jeff"(define-macro (each object iter)
  (set 'iter (trim (string iter) "|"))
  (dolist (obj (eval object))
          (eval (set (sym (eval iter)) obj))
          (catch (doargs (a)
                 (if (= a 'end) (throw nil) (eval a))))))

(each '(ruby is not a lisp) |item|
  (println item)
end)


What do you need end for?


(define-macro (each object iter)
  (set 'iter (trim (string iter) "|"))
  (dolist (obj (eval object))
    (eval (set (sym (eval iter)) obj))
    (doargs (a) (eval a))))

(each '(ruby is not a lisp) |item|
  (println item))
Title:
Post by: Jeff on April 17, 2007, 05:43:49 AM
I don't know. What does ruby need end for?