Open Source Projects
Software projects spanning compilers and type systems, scientific computing, distributed systems, and functional programming.
Recent
WireCat
Exploration of multi-level effect systems as a way to support AI-assisted software development. A compiler plugin, library, CLI, and viewer for writing typed wiring diagrams as executable Haskell: one definition either runs as code or renders as an interactive graph, separating high-level views from low-level implementation. Submitted to ZuriHac 2026.
Micro-Macro
Interactive explorer for microscopic Markov processes and the dynamics they induce on macroscopic observables. Build a process in the graph editor and watch how coarse-graining changes what the system looks like, with matrix and heatmap views throughout. Runs entirely in the browser, and comes with a tutorial on hidden Markov chains.
Scientific Computing
LineageFlow
Toolkit built during my PhD for reproducible spatio-temporal cell lineage analysis: many algorithms behind a single declarative interface, with 3D+time visualisation of results.
CSDC DAO
Full-stack platform for decentralized research collaboration. Experiment in academic self-organization with democratic governance: hierarchical organizational units including forums and elections.
GNUHealth Nix Docker
Docker deployment for GNUHealth medical information systems. Simplifies deployment using Nix reproducibility and containerization.
Haskell Libraries
constraint-classes
Library addressing type class limitations using ConstraintKinds. Enables flexible abstractions while preserving type inference.
Haskellreflex-elm
Elm-inspired development model for Haskell web applications. Combines Reflex reactive programming with Elm architecture.
LATS
Linear Algebra in Typed Space. Experiment replacing typed dimensions with typed linear spaces.
Haskell