Software

I love software engineering and programming languages. My college advisor, Dr. Alan K. Zaring, who himself was a college advisee of Daniel P. Friedman (the granddaddy of lazy functional programming), got me really interested in design and implementation of programming languages. This has led me to learn many programming languages from object-oriented to functional to logic to esoteric. But programming languages are no fun if one does not use them for implementing libraries and writing software!

This page is dedicated to some of the software I have designed and implemented in a variety of languages. Software ranges from toy prototypes to more complex libraries with lots of moving parts. If you are looking for my from-scratch impls, those are here.

I am often asked about my favorite languages. And while I do not have truly "favorite" languages, the ones that I enjoy programming in are Python (for AI/ML and prototyping), Rust (for top perf and reliability), Shell script (for POSIX and program composition), and Haskell (for fun).

Python

Rust

C++

Haskell

Other