Re: YANQ - When to map, when to iterate, when to recurse? And why CLOS?

Liste des GroupesRevenir à cl lisp 
Sujet : Re: YANQ - When to map, when to iterate, when to recurse? And why CLOS?
De : No_spamming (at) *nospam* noWhere_7073.org (B. Pym)
Groupes : comp.lang.lisp
Date : 06. Jul 2024, 00:36:05
Autres entêtes
Organisation : A noiseless patient Spider
Message-ID : <v69sgh$3ffop$1@dont-email.me>
User-Agent : XanaNews/1.18.1.6
Wade Humeniuk wrote:

John Connors wrote:
 
Yet Another Noob Question.
 
What are the characteristics of each implementation?
 
How can I tell which I should be writing in what context...
 
(defun find-indicies (lst tst)
  (let ((li 0))
    (labels ((qpred (a)
               (incf li)
               (if (funcall tst a)
                   (1- li)
                   nil)))
      (remove nil (mapcar #'qpred lst)))))
 
(defun find-indices (lst tst)
  (loop
   for el in lst
   counting t into index
   if (funcall tst el)
   collect index))
 
You are allergic to loop
 
(defun find-indices (list test)
   (loop for element in list
         for index from 1
         when (funcall test element) collect index))

Gauche Scheme

(define (find-indices lst test)
  (filter-map
    (lambda (e i) (and (test e) i))
    lst
    (lrange 1)))

(find-indices '(0 88 409 66 77) odd?)
  ===>
(3 5)

Date Sujet#  Auteur
6 Jul 24 o Re: YANQ - When to map, when to iterate, when to recurse? And why CLOS?1B. Pym

Haut de la page

Les messages affichés proviennent d'usenet.

NewsPortal