This is an incomplete list of libraries, tools, and experiments I’ve worked on. Most exist for for personal use or educational purposes. Some are well documented, others are not. All can be found on my github.
- leftpad.ko - The infamous leftPad() implemented as a kernel module.
- vim-signed-local-rc - Vim plugin for loading an RSA-signed project-local vimrc.
- xhb-monad - Monad transformer for xhb server connections.
- xhb-requests - Classes and generated instances for a uniform interface to xhb.
- xhb-event-queue - Monad transformer over xhb-monad for event handling.
- xhb-mapping-state - Monad transformer over xhb-monad for keeping track of key, mod, and pointer mappings.
- chuck-compositions - Some bad music written in the strongly-timed programming language ChucK
- bigword - Library for treating bit arrays with statically known size as heterogeneous Church-encoded vectors.
- bencode - Fast and flexible parsers and builders for BEncoded data.
- mod-n - Integers under a modulus, using GHC’s type-level naturals.
- n-vector - Fixed-length unboxed vectors.
- recall - A typeclass for memoization, based on a paper by Simon Peyton Jones.
- 24-bit - Word24 and Int24 types, build from GHC.Prim.
- rc4 - The RC4 stream cipher implemented in pure Haskell.
- git-audio - Allows a developer to record and play back verbal commit messages.
- TwitchPlaysPokemonGo - A Pokemon Go playing bot that was a meme for a short period of time. Created with some 2016 hackNY fellows.
- wikipath - Various implementations of the ‘wikipedia game’ (finding the shortest path between two articles using only internal links) in both Haskell and Python.
- brainf–k - A tiny brainf–k interpreter written in Haskell.