• Re: Brevity vs. Lispicity

    From B. Pym@Nobody447095@here-nor-there.org to comp.lang.lisp on Wed Jun 18 11:29:20 2025
    From Newsgroup: comp.lang.lisp

    Bill Atkins wrote:

    (defun occurrences (list)
    (let (result)
    (dolist (x list)
    (if (assoc x result)
    (incf (cdr (assoc x result)))
    (push (cons x 1) result)))
    (sort result #'> :key #'cdr)))

    Gauche Scheme:

    (define (occurrences input)
    ;; Create table (association list).
    (define result (map (cut cons <> 0) (delete-duplicates input)))
    (dolist (x input) (inc! (cdr (assoc x result))))
    (sort result > cdr))

    (occurrences '(a b c d d d d c c b))
    ===>
    ((d . 4) (c . 3) (b . 2) (a . 1))
    --- Synchronet 3.21d-Linux NewsLink 1.2