About Me

I am a Computer Scientist. I do research in programming languages and algorithms. My professional interest focusses on enabling tech startups to realize and develop marketable and manageable production concepts.

My first experience with programming languages came when I read a manual for BASIC at age 13. I remember learning HTML in a library seminar as well, but I did not actually compile a program until my senior year of high school, when I was able to take a programming class in Visual Basic. By then I was already a very fluent and natural programmer, and had taken to the obnoxious pattern of constructing each of my methods within a single line of code.

Six months later, I quickly mastered the Java syntax for a summer course before entering Cornell to study Engineering Physics. By quickly, I mean it took six days of trial and error before I clicked with the language, and I've had the API in my bookmarks ever since. That summer, we built poetry and music synthesizers, crypto-functions, and traffic networks.

In my time at Cornell, I moved from Physics to Operations Research, to Math, to Computer Graphics, and finally stuck in the Programming Languages department of Computer Science. Along the way, I made a concentration in business and developed plans for sustainability consultants in California, software developers in Ghana, and internet cafes in Ukraine.

Since my Junior year, I have endeavored to move into high-tech startups. In the summer of 2010, I worked at Clearwell, a company of 200 employees, and in the winter, I worked on a small startup in Ithaca to develop a social network for minority undergraduates at Top 45 universities. Now I am working to deploy Citizenry for the Ithaca tech community.

I will be moving to Portland, Oregon this year to pursue a Ph.D. in Computer Science. There I hope to work in their blossoming tech industry. I admire Portland for it's focus on quality of life and focus on sustainability. I hope to find myself welcome to such a vibrant community.

Brian Peter Ledger

Education

Bachelor's of Computer Science
Cornell University
May 2011

Work Experience

Lead Programmer, Aeogea Incorporated

Software Development Intern, Clearwell Systems

Programming Support, Cornell Program of Computer Graphics

Summer Program Assistant, Office of Minority Educational Affairs

Woodworker's Assistant, Robert Nadaskay

Woodworker's Assistant, Fine Line Custom Cabinets

PLs

Haskell, Java, Ocaml, C, Python, Javascript, R, Latex,

Technologies

Mongrel2, Cabal, Ubuntu, Apache, MySql, Django, Cassandra, ZeroMQ


Download my personal resume.

Projects

Works in Progress

Dispatch: Dynamic Fleet Management

FuncBase: Arrow

Past Projects

iQueueTV Video Jukebox

OCaml-ZeroMQ Bindings

Syntactic Analysis in Objective Caml and YACC

Drag 'n Drop Graphical Migration Analysis in Swing

University Projects

OCaml Scheme Interpreter

Map/Reduce Architecture in Objective Caml

Python Multi-threaded Mail-Server

Lightweight File System in Python

Pipelined MIPS architecture in Logisim

Grammar-Based 3D Animation Architecture in Java

Low-Level Network Honeypot in C

ARIMA and GARCH Models in R

See Out My GitHub

Research

My research focusses on integrating parallel processing with non-deterministic programming language semantics. This most recent effort has culminated in my ongoing attempt to build a compiler for the functional-logic programming language, Curry.

I am also engaging topics relevant to the denotational semantics of programming languages, currently type-systems, monads, continuous partial orders, game semantics, and logic-based program synthesis.

Reading

The Formal Semantics of Programming Languages

Types and Programming Languages

Recently Read

Functional Logic Programming

Introduction to Computability Logic

The Little Book of Semaphores

Following

Patterns in Functional Programming

Articles in Higher-Order Ruby