Light
code header

Projects

A selection of software and research projects, mostly from my time as a PhD student at Tufts and the years immediately following. The common thread is systems software: memory management, language tooling, and runtime behavior.

Floorplan

A domain-specific language for specifying the spatial memory layout properties of garbage collectors. Published at GPCE 2019. The key idea: GC bugs often arise from violated layout invariants that conventional type systems can't express. Floorplan makes those invariants first-class and checkable.

Paper and slides

Permchecker

A runtime analysis tool for detecting memory safety errors in garbage collectors using typestate and permission types on the JVM. Developed as part of my dissertation work and presented as a standalone talk in 2021.

Talk (February 2021)PhD defense (July 2021)

ANTLR-Haskell

A deeply-embedded quasiquoter for defining language grammars in Haskell using ANTLR's G4 syntax. The goal was to bring industry-standard parser infrastructure into the Haskell ecosystem, generating parsers directly from a grammar specification without leaving the language.

Blog post

PADS-Haskell

An extension of the PADS data description language to support binary and cyclic data structures. PADS generates parsers and printers automatically from a declarative format specification — useful for binary protocols and legacy formats that predate modern serialization libraries.