Paul Stansifer

PhD Student

Education

  • BA, Williams College

About Paul

  • Hometown: Melbourne Beach, Florida
  • Field of Study: Programming Languages
  • PhD Advisor: Mitch Wand

What are the specifics of your graduate education?

My research has focused on removing usability obstacles to metaprogramming (i.e. systems that manipulate code as data, like macro systems or theorem provers), in particular, restrictions on what kinds of languages can be meta-programmed.

What are your research interests?

I'm fascinated by all kinds of ergonomic trade-offs in programming language design, but my current work starts from the well-understood (but generally not-yet-practical) systems for maintaining the correct meaning of names while manipulating code. Those systems typically cannot handle the complex binding forms present in practical programming languages; our work is to add power to one such system.

I have also worked with Mozilla on the design and implementation of the macro system of the Rust programming language. We have discovered that S-expressions are not nearly as important to the design of a good macro system as we thought. To put it in buzzwords: the homoiconicity was inside us, all along!

What’s one problem you’d like to solve with your research/work?

Although this is far, far more than a one-person research project, I believe it is possible to build a language with a macro system and a type system in which neither one feels "tacked-on". (The particular technical obstacle is that, so far, type errors are reported in terms of code after macro expansion, not the code the programmer wrote. I believe safe manipulation of binding forms to be an important step in the direction of type-safe macros.)

What aspect of what you do is most interesting?

I'm always fascinated by the disconnect between mathematics and programming. Each can claim to be more formal than the other; each has powerful tools and a strong sense of beauty, but they often completely fail to match up to each other. In a sense, it seems like each still has much to learn from the other.

What are your research or career goals, going forward?

I aim to remind the world that syntax matters more than we give it credit for, and poses harder problems than we think it does.

Recent Publications