Projects

Lampas

Scheme-like language written in Haskell, including practical and extensible features.

Swiper

A parser library for Apple's Swift, with a clean DSL and the power to parse arbitrary context-free languages.

Typical

A formally verified type system for JavaScript based on the Calculus of constructors.

Quizzical

A test-suite and docs generator for JSON APIs built around cURL.

Spectacle

An intelligent STL viewer for the web with shape recognition.

TeXode

Makes typesetting easy, rendering collections of Markdown files as LaTeX formatted books.

Rene

A graph visualizer for the web utilizing an interpreter of an APL dialect to evaluate input.

zTest

Statistical performance testing for JavaScript.

Schript

A JavaScript dialect providing more uniform syntax and the ability to define macros.

Products

Bonds.io

A chemical bond drawer for the web and for iOS.

Curves

An iPad app for the graphing of mathematical functions on the plane.

BHStudent/BHTeacher

iPad apps for students and teachers enabling file upload and new interactions with the Brainhoney platform.

fastAdvocate

A platform for trade organizations allowing them to notify their members of new legislature.

Surg.co

A person-to-person file transfer app consisting of drag and drop sharing over link-based channels.

Quarantine

A proxy for schools which lets teachers switch off the internet access of their classes.

Articles

Deriving Rubik's Cube Methodology

Some basic group theory was used in deriving "macros" for the effective manipulation of Rubik's cubes.

Verification of an Interpreter

A stack based language was designed and implemented in high school algebra and proven correct.

Tarpits & Abstraction

A book on abstraction of computation, from the design of Lambda Calculus to the simulation, interpretation, and self-hosting of a Lisp.