Re: Loop? ptooey

Liste des GroupesRevenir à cl lisp 
Sujet : Re: Loop? ptooey
De : No_spamming (at) *nospam* noWhere_7073.org (B. Pym)
Groupes : comp.lang.lisp
Date : 16. Jun 2024, 01:16:42
Autres entêtes
Organisation : A noiseless patient Spider
Message-ID : <v4l7co$3mbej$1@dont-email.me>
User-Agent : XanaNews/1.18.1.6
Kenny Tilton wrote:
 
KMP: The example you cite is quite simplistic.....snip...A
loop like this:
 
           (loop for x from 0
                 for y in some-list
                 when (good-result? y)
                   collect (list x y))
 
is easy to write and maintain, and much easier to explain than the
equivalent, but more Lispy:
 
           (do ((x 0 (+ x 1))
                (y-list some-list (cdr y-list))
           (result '()))
              ((null y-list) ;; [fixed]
                (nreverse result))
           (let ((y (first y-list)))
              (when (good-result? y)
                (push (list x y) result))))
 
Ugh. Howse about:
 
(let ((goody-pos -1)
       goodies)
    (dolist (it some-list (nreverse goodies))
      (incf goody-pos)
      (when (good-result? it)
        (push (list goody-pos it) goodies))))
 
perhaps i will be swayed someday by the charms of loop, but i gotta
tell you, i just don't get it. is loop for people who can't read lisp?
can't be, lisp is easier to read than loop. stumped.

Gauche Scheme:

(use srfi-42) ;; list-ec

(define some-list '(3 4 5 7 8))

(list-ec
  (:list x (index i) some-list)
  (if (odd? x))
  (list i x))

  ===>
((0 3) (2 5) (3 7))

Date Sujet#  Auteur
16 Jun 24 o Re: Loop? ptooey1B. Pym

Haut de la page

Les messages affichés proviennent d'usenet.

NewsPortal