Re: Loopy

Liste des GroupesRevenir à cl lisp 
Sujet : Re: Loopy
De : No_spamming (at) *nospam* noWhere_7073.org (B. Pym)
Groupes : comp.lang.lisp
Date : 10. Jun 2024, 08:17:09
Autres entêtes
Organisation : A noiseless patient Spider
Message-ID : <v465p2$7ib2$1@dont-email.me>
References : 1
User-Agent : XanaNews/1.18.1.6
On 6/9/2024, B. Pym wrote:

The ability in loop to do even complex things like:
 
 (loop for x in '(1 2 3 4 5 6 7)
    when (evenp x)
     collect x into evens
    else
     collect x into odds
    finally
     (return (values evens odds)))
 => (2 4 6), (1 3 5 7)

Peter Seibel wrote:

 >   (loop for x across array-of-numbers
 >         minimizing x into min
 >         maximizing x into max
 >         summing x into total
 >         counting t into count
 >         finally (return (list min max (/ total count))))


In Gauche Scheme, it's a one-liner.

(use gauche.sequence)

(define v #(0 2 -3 99 48 35 86 27 50 18))
(define count (vector-length v))


`(,(find-min v) ,(find-max v) ,(/ (fold + 0 v) count))
  ===>
(-3 99 181/5)


--


Date Sujet#  Auteur
9 Jun 24 * Loopy5B. Pym
9 Jun 24 +- Re: Loopy1B. Pym
10 Jun 24 `* Re: Loopy3B. Pym
10 Jun 24  +- Re: Loopy1B. Pym
13 Jun 24  `- Re: Loopy1B. Pym

Haut de la page

Les messages affichés proviennent d'usenet.

NewsPortal