-
chevron_right
Quicklisp Stats
Michał "phoe" Herda · Sunday, 20 December, 2020 - 18:10 edit
Quicklisp statistics are now available as CSV files, and the Quicklisp Stats system that I've just submitted to Quicklisp is a little helper library for handling this dataset and accessing it from inside Lisp.
Examples:
;;; How many times was Alexandria downloaded in Nov 2020?
QUICKLISP-STATS> (system-downloads :alexandria 2020 11)
13731
;;; Get all systems that were downloaded
;;; more than 10000 times in Nov 2020
;;; and print them somewhat nicely
QUICKLISP-STATS> (loop with stats = (month 2020 4)
with filtered-stats
= (remove-if-not (lambda (x) (< 10000 (cdr x))) stats)
for (system . count) in filtered-stats
do (format t ";; ~20A : ~5D~%" system count))
;; alexandria : 19938
;; cl-ppcre : 15636
;; bordeaux-threads : 14974
;; trivial-features : 14569
;; split-sequence : 14510
;; closer-mop : 14482
;; trivial-gray-streams : 14259
;; babel : 14254
;; cffi : 12365
;; flexi-streams : 11940
;; iterate : 11924
;; named-readtables : 11205
;; cl-fad : 10996
;; usocket : 10859
;; anaphora : 10783
;; trivial-backtrace : 10693
NIL
;;; How many downloads did Bordeaux Threads
;;; have over all of 2020?
QUICKLISP-STATS> (loop for ((year month) . data) in (all)
for result = (a:assoc-value data "bordeaux-threads"
:test #'equal)
do (format t ";; ~4,'0D-~2,'0D: ~D~%" year month result))
;; 2020-01: 16059
;; 2020-02: 12701
;; 2020-03: 17123
;; 2020-04: 14974
;; 2020-05: 14489
;; 2020-06: 13851
;; 2020-07: 14130
;; 2020-08: 10843
;; 2020-09: 13757
;; 2020-10: 13444
;; 2020-11: 15825
NIL