Sometimes I like to pretend that I am a wizard and algorithms are magic spells.

This is a rough estimate of my familiarity with various programming languages.

The measurements are of Lines of Code for personal projects published on GitHub.

Lang Lines
C++ 17499
C 15845
Assembly 4222
OCaml 1601
Scheme 1377
Haskell 730
Shell 604
Racket 498
Ruby 416
Rust 338
Perl 216
Clojure 214


Some of the languages I am merely learning and have an inflated count due to the number of comments in the code i.e. Haskell, Assembly.

Some languages are very similar so individual counts may be misleadingly low i.e. Scheme, Racket, Clojure.

Some languages I know rather well but don’t bother publishing a lot of code for i.e. Ruby, Python, Perl.