To be updated.

At home, Racket is my favorite small tool language, taking the place of Python for a lot of tasks. I have also started to use Rust more as well. One personal project that has been very rewarding is the development of a set of Racket packages implementing some core Machine Learning (ML) algorithms. These packages are not intended to be production ready, I wanted to learn more about how ML processes worked and decided the best way was from the ground up. The result is a set of simple, pedantic implementations that are written to be readable rather than to scale.

Development Environment

To be updated.

Programming Languages I Have Known

Yes, I collect these things; I am fascinated by the different approaches that languages take, the evolution among language families, and the specialization and generalization they support. I also periodically scan eBay and others for manuals and books for the more obscure or fossilized languages. Unfortunately some of these only exist as online, usually PDF, scanned manuals.

Because someone paid me to

  • Ada 83/95
  • BASIC Family
    • MS/Sanyo Basic
    • Visual Basic
  • COBOL (yes, really)
  • C Family
    • C
    • C++; Glockenspiel, Zortech, MSVCC, GCC, CLANG
    • C#
    • Objective-C
  • Erlang
  • FoxPro
  • JavaScript
  • JVM Focused
    • Java
    • Kotlin
    • Scala
  • Lispy Languages
    • Clojure
  • Mathematica/Wolfram
  • Modula-2
  • Perl
  • Progress 4GL
  • Python (from 0.5, and built first non-Unix port)
  • Rust
  • Query/Constraint Languages
    • OCL
    • SPARQL
    • SQL; DB2, MS T-SQL, Oracle PSQL, Postgres

Mostly for fun, or education

  • Assembler
    • 6502
    • 8088
    • 80x86
  • BASIC Family
    • BBC Basic
    • Commodore Basic
  • Eiffel
  • Esterel
  • Forth
  • F#
  • Lispy Languages
    • Racket
    • Scheme
  • ML Family
    • Haskell
    • Miranda
    • OCaml
  • Occam
  • Pascal Family
    • Modula-3
    • Oberon
    • Turbo Pascal
    • VAX Pascal
  • Prolog
  • SNOBOL
  • Smalltalk, including Squeak

Related Posts