Michael Greenberg

Assistant Professor Department of Computer Science Pomona College

I study programming languages. My research has focused on strengthening the guarantees on offer at the “easy and automatic” end of the spectrum. I primarily work in two areas: contracts, a flexible form of runtime verification for higher-order programming languages; and software-defined networking, a recent development that allows for straightforward centralized control of computer networks.

I've also been building tools that apply topic models to the PL literature.

Teaching


SemesterCourses
F2017 CS 131
CS 190 (PO-3 and PO-4)
S2017 CS 55 (archived)
CS 131 (archived)
F2016 CS 131 (archived)
CS 190 (archived)
S2016 CS 51 (w/ Profs. Chen, Kampe, and Wu)
CS 181-N Software Foundations (archived)
F2015 CS 51 (w/ Profs. Chen, Kampe, and Wu)
CS 131 (archived)
Office hours

My office hours are 2:30-5pm on Wednesdays. I'm available otherwise by appointment; a week's notice is best. If my office door is open, I'm interruptable.

Materials

Research


Venue Paper (see a complete list)
In submission Kleene Algebras Modulo Theories Ryan Beckett, Eric Campbell, and Michael Greenberg
TOPLAS 2017 Polymorphic Manifest Contracts, Revised and Resolved Taro Sekiyama, Astushi Igarashi, Michael Greenberg
OBT 2017 Understanding the POSIX Shell as a Programming Language Michael Greenberg
TFP 2016 Space-Efficient Latent Contracts Michael Greenberg
SIGCOMM 2016 SNAP: Stateful Network-Wide Abstractions for Packet Processing Mina Tahmasbi Arashloo, Yaron Koral, Michael Greenberg, Jennifer Rexford, and David Walker
PLDI 2016 Temporal NetKAT Ryan Beckett, Michael Greenberg, David Walker
HOPE 2015 Combining Manifest Contracts with State Michael Greenberg
SNAPL 2015 Tracking the Flow of Ideas through the Programming Languages Literature Michael Greenberg, Kathleen Fisher, and David Walker
POPL 2015 Space-Efficient Manifest Contracts Michael Greenberg
... complete list ...
Student theses
Year Student Title
2017 Eric Campbell Infiniteness and Linear Temporal Logic

Other news and activities