Hello there! My name is Justin Lubin. I love computer science, mathematics, piano, and crochet. Most of all, I am passionate about research and education: not only trying to discover beautiful results, but also sharing what I learn with others.
I aspire to be a professor of computer science so that I will be able to combine two of my deepest passions, computer science theory and teaching. I hope that one day I will be able to pay off the debt of gratitude that I have to all the wonderful people who have taught me in my life by passing on the knowledge that they have imparted to me to the next generation.
My goal is twofold: to develop elegant theories and to make them usable by humans.
To that end, I am very interested in programming language theory and draw great inspiration from the study of human-computer interaction.
I currently work with Professor Ravi Chugh at the University of Chicago, and have been doing so for a few years. I also worked with Professor Jonathan Aldrich at Carnegie Mellon University during the summer of 2018. Many, many thanks to both of them for their extremely helpful guidance!
Sketch-n-Sketch @ UChicago
Sketch-n-Sketch is a bidirectional HTML and SVG editor. Users can write and evaluate programs to produce output, as usual, but they can also directly manipulate the output of a program to change the program itself. Two important goals of this project are (i) to provide an environment that makes it easier for users to develop complex and reusable content, and (ii) to develop theoretical machinery necessary for more general-purpose output-directed manipulation and bidirectional editing.
Deuce @ UChicago
Deuce is a structure-aware code editor equipped with direct manipulation capabilities for invoking automated program transformations. Deuce’s aim is to provide human-friendly structural interactions on top of familiar text-based editing.
Wyvern @ CMU
Wyvern is an object-oriented, capability-safe language focused on security, modularity, and language extensibility. Specifically, I have done work on Wyvern’s capability-based effect system by developing theory (and implementing it in the compiler) to make it more usable for programmers.
Brian Hempel, Justin Lubin, Grace Lu, and Ravi Chugh.
In Proceedings of the International Conference on Software Engineering (ICSE), Gothenburg, Sweden, May 2018.
In my free time, I like to compose music. Here are some of the pieces that I've composed (and am still working on). All my pieces are composed in the wonderful and open-source music notation software Musescore.
- Lofty Stars (mp3 | pdf). Wind Quartet, December 2018.
- Wind Quintet in C (mp3 | pdf). Wind Quintet, November 2018.
- Reflections (mp3 | pdf). String Quartet, October 2018.
- Dive (mp3 | pdf). Orchestra, August 2018.
- Travels (mp3 | pdf). 8-Bit, August 2018.
- Outset (mp3 | pdf). 8-Bit, June 2018.