[racket-dev] Most used identifiers and their length

From: Laurent (laurent.orseau at gmail.com)
Date: Fri May 4 13:07:44 EDT 2012

Here is a quick test on the collects dir (program attached if you want to
improve it).
A number of files are not parsed because of various glitches (#reader lines
in particular).

Below is the dict of the first 500 identifiers with the number of
occurrences, sorted by this number times the string-length of the
identifier.

Actually, it doesn't look that bad IMO.

Laurent, who should have worked instead...

'((define . 47453)
  (quote . 48703)
  (lambda . 22377)
  (send . 21027)
  (syntax . 13956)
  (let . 21909)
  (... . 18877)
  (list . 13315)
  (unquote . 6398)
  (x . 43546)
  (define/public . 3189)
  (quasiquote . 3689)
  (loop . 8958)
  (if . 17508)
  (set! . 8569)
  (make-object . 3104)
  (unless . 5432)
  (require . 4582)
  (stx . 10494)
  (else . 7808)
  (name . 7663)
  (and . 10187)
  (cons . 7529)
  (raise-syntax-error . 1631)
  (values . 4865)
  (cond . 7077)
  (define-syntax . 2149)
  (when . 6942)
  (car . 8956)
  (provide . 3745)
  (syntax->list . 2124)
  (syntax-case . 2257)
  (let-values . 2462)
  (define/override . 1517)
  (unsyntax . 2757)
  (o . 20379)
  (format . 3377)
  (define-values . 1553)
  (define-struct . 1548)
  (null? . 3961)
  (cdr . 6557)
  (quasisyntax . 1752)
  (string-append . 1456)
  (raise-type-error . 1176)
  (begin . 3621)
  (-> . 8915)
  (define/private . 1261)
  (with-syntax . 1603)
  (parameterize . 1416)
  (check-equal? . 1408)
  (identifier? . 1527)
  (string-constant . 1115)
  (syntax-e . 2082)
  (error . 3274)
  (not . 5409)
  (parent . 2662)
  (map . 5280)
  (vector-ref . 1575)
  (let* . 3791)
  (start . 2987)
  (string? . 2120)
  (unquote-splicing . 906)
  (eq? . 4740)
  (null . 3550)
  (void . 3513)
  (apply . 2727)
  (exact-nonnegative-integer? . 516)
  (append . 2182)
  (length . 2104)
  (test-case . 1401)
  (define-syntax-rule . 688)
  (for-each . 1463)
  (equal? . 1857)
  (test . 2775)
  (define-enum . 1003)
  (make-parameter . 787)
  (quote-syntax . 918)
  (in-list . 1562)
  (with-handlers . 811)
  (v . 10374)
  (expr . 2584)
  (vector . 1707)
  (pair? . 2024)
  (label . 1997)
  (body . 2485)
  (args . 2481)
  (id . 4899)
  (list-ref . 1218)
  (build-path . 972)
  (or . 4801)
  (p . 9589)
  (string->symbol . 675)
  (+ . 9441)
  (i . 9390)
  (generate-temporaries . 465)
  (datum->syntax . 715)
  (printf . 1527)
  (s . 9138)
  (dc . 4555)
  (a . 8852)
  (string-length . 675)
  (syntax/loc . 873)
  (symbol->string . 621)
  (symbol? . 1228)
  (expression . 859)
  (c . 8442)
  (unsyntax-splicing . 496)
  (color . 1665)
  (define-for-syntax . 478)
  (provide/contract . 499)
  (listof . 1326)
  (reverse . 1136)
  (style . 1571)
  (new . 2618)
  (port . 1953)
  (hash-ref . 974)
  (module . 1292)
  (syntax-rules . 644)
  (number? . 1104)
  (match . 1543)
  (real? . 1539)
  (zero? . 1538)
  (rest . 1922)
  (cadr . 1919)
  (for-syntax . 764)
  (pos . 2534)
  (regexp-match . 633)
  (height . 1255)
  (snip . 1880)
  (super-new . 834)
  (val . 2493)
  (case-lambda . 679)
  (result . 1240)
  (y . 7388)
  (struct . 1230)
  (racket/base . 657)
  (path . 1778)
  (term . 1776)
  (current-error-port . 393)
  (l . 7049)
  (e . 7021)
  (n . 6991)
  (quasisyntax/loc . 464)
  (solid . 1391)
  (boolean? . 868)
  (hash-set! . 768)
  (pattern . 977)
  (for/list . 847)
  (inexact->exact . 480)
  (procedure? . 672)
  (f . 6699)
  (stretchable-height . 370)
  (free-identifier=? . 388)
  (λ . 6592)
  (b . 6524)
  (str . 2172)
  (width . 1293)
  (line . 1613)
  (filename . 805)
  (def/public . 643)
  (add1 . 1607)
  (syntax->datum . 486)
  (or/c . 1568)
  (display . 875)
  (vector-length . 471)
  (tex-def-prim . 509)
  (all-from-out . 493)
  (_ . 5915)
  (unbox . 1180)
  (text . 1472)
  (current-output-port . 307)
  (number . 968)
  (test-expression . 387)
  (vector-set! . 526)
  (type . 1432)
  (number->string . 409)
  (t . 5713)
  (value . 1141)
  (current-continuation-marks . 219)
  (procedure-arity-includes? . 227)
  (empty . 1122)
  (last-position . 427)
  (racket/class . 462)
  (- . 5534)
  (string->number . 395)
  (case . 1364)
  (_pointer . 670)
  (len . 1782)
  (path->string . 442)
  (syntax-property . 353)
  (inherit . 753)
  (eof-object? . 478)
  (begin-edit-sequence . 274)
  (class . 1038)
  (Integer . 737)
  (prefix . 857)
  (end . 1703)
  (stretchable-width . 298)
  (proc . 1266)
  (callback . 630)
  (side-condition . 354)
  (default-color . 380)
  (expected . 615)
  (in-range . 615)
  (any/c . 980)
  (match-define . 407)
  (memq . 1220)
  (current-directory . 287)
  (arithmetic-shift . 304)
  (string=? . 602)
  (obj . 1603)
  (rectangle . 533)
  (end-edit-sequence . 282)
  (=> . 2393)
  (out . 1588)
  (file-exists? . 394)
  (in-hole . 672)
  (mzscheme . 587)
  (this . 1172)
  (: . 4680)
  (set-box! . 582)
  (current-namespace . 272)
  (base . 1153)
  (sub1 . 1149)
  (andmap . 765)
  (syntax? . 654)
  (bytes-length . 381)
  (* . 4561)
  (test-suite . 454)
  (key . 1513)
  (char->integer . 349)
  (file . 1122)
  (preferences:get . 297)
  (var . 1484)
  (check . 890)
  (r . 4447)
  (horizontal-panel% . 261)
  (call-with-values . 277)
  (w . 4406)
  (make-bindings . 338)
  (set-brush . 485)
  (string . 718)
  (= . 4303)
  (stepper-syntax-property . 187)
  (expect . 716)
  (syntax-parse . 357)
  (exact->inexact . 305)
  (exact-integer? . 304)
  (dynamic-require . 283)
  (all-defined-out . 282)
  (positive? . 470)
  (list? . 836)
  (bytes-ref . 463)
  (count . 833)
  (for . 1387)
  (bytes->string/utf-8 . 217)
  (board . 823)
  (substring . 457)
  (h . 4096)
  (filter . 682)
  (rational? . 450)
  (first . 803)
  (insert . 669)
  (is-a? . 802)
  (define-syntax-class . 211)
  (frame . 801)
  (make-test-mtch . 285)
  (arg . 1329)
  (struct-out . 395)
  (default . 564)
  (d . 3932)
  (size . 979)
  (syntax-local-value . 217)
  (-filter . 553)
  (path-string? . 322)
  (mode . 960)
  (bindings . 479)
  (rename-out . 382)
  (raise-mismatch-error . 191)
  (define-metafunction . 201)
  (system-type . 346)
  (_void . 755)
  (define/augment . 269)
  (define-syntaxes . 251)
  (content . 537)
  (defmagick* . 375)
  (string->bytes/utf-8 . 197)
  (racket/contract . 249)
  (Number . 622)
  (datum->syntax-object . 186)
  (right . 742)
  (editor . 617)
  (_fun . 925)
  (check-true . 368)
  (check-expect . 306)
  (integer? . 458)
  (super . 731)
  (exn-message . 332)
  (define-signature . 228)
  (with-continuation-mark . 165)
  (#%plain-app . 328)
  (define-runtime-path . 189)
  (event . 712)
  (table . 710)
  (current-eventspace . 197)
  (find-or-create-brush . 176)
  (close-output-port . 207)
  (make-element . 292)
  (vector->list . 292)
  (emit . 875)
  (in . 1744)
  (who . 1162)
  (m . 3481)
  (set-pen . 497)
  (bitwise-and . 314)
  (preferences:set-default . 150)
  (left . 862)
  (box . 1149)
  (draw-rectangle . 244)
  (get-editor . 340)
  (rename . 565)
  (racket/match . 282)
  (exact-positive-integer? . 147)
  (make-bind . 375)
  (instantiate . 306)
  (test-empty . 336)
  (make-vector . 305)
  (canvas . 559)
  (make-hash . 369)
  (exp . 1099)
  (string-ref . 329)
  (viewport . 409)
  (dynamic-wind . 271)
  (settings . 406)
  (next . 812)
  (init-field . 323)
  (ormap . 641)
  (test-equal? . 290)
  (make-bytes . 319)
  (open-input-string . 186)
  (transparent . 287)
  (msg . 1051)
  (fprintf . 448)
  (index . 625)
  (_double* . 390)
  (names . 622)
  (prefix-in . 343)
  (max . 1029)
  (regexp-match-positions . 140)
  (current-input-port . 171)
  (directory-exists? . 180)
  (exn:fail? . 340)
  (item . 764)
  (_int . 762)
  (is-a?/c . 435)
  (get-value . 338)
  (make-hasheq . 276)
  (char=? . 506)
  (hash-table-put! . 202)
  (regexp-match? . 233)
  (env . 1001)
  (find-or-create-pen . 166)
  (Listof . 496)
  (check-arg . 330)
  (any . 986)
  (drracket:language-configuration:language-settings-language . 51)
  (vertical-panel% . 196)
  (scheme/base . 267)
  (exn . 963)
  (button% . 412)
  (clause . 480)
  (fields . 476)
  (interactions-text . 167)
  (racket/runtime-path . 149)
  (message . 403)
  (form . 705)
  (thunk . 564)
  (letrec . 469)
  (caddr . 561)
  (get-width . 310)
  (false . 558)
  (color% . 465)
  (get-text-extent . 185)
  (offset . 462)
  (identifier . 277)
  (list* . 553)
  (racket/list . 251)
  (semaphore-post . 197)
  (newline . 394)
  (ctc . 918)
  (k . 2754)
  (hilite . 458)
  (pred . 687)
  (style-delta% . 229)
  (#%module-begin . 195)
  (for/fold . 341)
  (x-min . 541)
  (current-custodian . 159)
  (_GtkWidget . 270)
  (get-height . 270)
  (show . 674)
  (blank . 539)
  (stx-car . 385)
  (mzlib/class . 245)
  (get-top-level-window . 134)
  (src . 891)
  (lst . 888)
  (center . 444)
  (define-gtk . 266)
  (x-max . 529)
  (bytes-append . 220)
  (code . 659)
  (make-posn . 292)
  (Univ . 657)
  (title . 525)
  (depth . 525)
  (col . 871)
  (String . 435)
  (get-client-size . 174)
  (only-in . 372)
  (current-inexact-milliseconds . 93)
  (tex-def-math-prim . 153)
  (_MagickWand . 236)
  (bytes? . 431)
  (def/override . 215)
  (vars . 642)
  (start-pos . 285)
  (begin0 . 426)
  (preferences:set . 170)
  (regexp-replace* . 170)
  (current-command-line-arguments . 85)
  (queue-callback . 182)
  (dir . 845)
  (red . 844)
  (field . 506)
  (lang . 631)
  (regexp-replace . 180)
  (bitmap% . 359)
  (definitions-text . 157)
  (the-color-database . 139)
  (recur . 500)
  (with-output-to-file . 131)
  (file-position . 191)
  (clauses . 354)
  (info . 619)
  (data . 616)
  (let*-values . 224)
  (member . 410)
  (saved-env . 273)
  (state . 491)
  (import . 409)
  (hash-table-get . 175)
  (blame . 490)
  (make-semaphore . 175)
  (value-of . 305)
  (quotient . 302)
  (cases . 477)
  (syntax-position . 159)
  (vector? . 340)
  (tag . 793)
  (/ . 2369)
  (get-selection . 182)
  (input . 473)
  (change-style . 197)
  (define-type-alias . 139)
  (-String . 337)
  (current-load-relative-directory . 76)
  (close-input-port . 147)
  (floor . 470)
  (before-after . 195)
  (dy . 1166)
  (Circle . 388)
  (num . 774)
  (contract-projection . 122)
  (status . 386)
  (get-start-position . 128)
  (bitwise-ior . 209)
  (delta . 459)
  (negative? . 255)
  (get-actual-char . 152)
  (bottom . 379)
  (method . 377)
  (split-path . 226)
  (flush-output . 188)
  (<= . 1124)
  (source . 374)
  (match-lambda . 187)
  (super-instantiate . 132)
  (draw-line . 249)
  (dx . 1113)
  (expval-extractor-error . 101)
  (racket/contract/base . 111)
  (list->vector . 185)
  (defproc . 317)
  (define: . 317)
  (teach-syntax-error . 123)
  (collection-path . 147)
  (head . 551)
  (orig-stx . 275)
  (export . 364))
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.racket-lang.org/dev/archive/attachments/20120504/5ff2e6ff/attachment-0001.html>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: racket-identifiers.rkt
Type: application/octet-stream
Size: 1886 bytes
Desc: not available
URL: <http://lists.racket-lang.org/dev/archive/attachments/20120504/5ff2e6ff/attachment-0001.obj>

Posted on the dev mailing list.