Re: Exercises, chap. 3, Graham

Liste des GroupesRevenir à cl scheme 
Sujet : Re: Exercises, chap. 3, Graham
De : Nobody447095 (at) *nospam* here-nor-there.org (B. Pym)
Groupes : comp.lang.lisp comp.lang.scheme
Date : 11. Jul 2025, 01:42:38
Autres entêtes
Organisation : A noiseless patient Spider
Message-ID : <104pmls$14ona$1@dont-email.me>
User-Agent : XanaNews/1.18.1.6
Alan Crowe wrote:

(defun occurrences-CL-condensed (list)
  (sort (loop for x in (remove-duplicates list)
              collect (cons x (count x list)))
        #'> :key #'cdr))

Gauche Scheme

(define (occurrences-GS-condensed List)
  (sort
    (map
      (^x (cons x (count (pa$ equal? x) List)))
      (delete-duplicates List))
    > cdr))

Testing.

(occurrences-GS-condensed '(a b c d e f b c d e b c d))

  ===>
((b . 3) (c . 3) (d . 3) (e . 2) (a . 1) (f . 1))


Shorter yet.

(define (occurrences-GS-condensed List)
  (sort
    (map
      (^x (cons x (count (is x) List)))
      (delete-duplicates List))
    > cdr))

Given:

(define is
  (case-lambda
    [(x) (lambda(y) (equal? y x))]
    [(pred x) (lambda(y) (pred y x))]
    [(pred key x) (lambda(y) (pred (key y) x))]))

Date Sujet#  Auteur
11 Jul01:42 o Re: Exercises, chap. 3, Graham1B. Pym

Haut de la page

Les messages affichés proviennent d'usenet.

NewsPortal