I'm back in Bloomington after having spent the first part of this week at ICFP. This was my first time attending an academic conference, and it was great. I started making a list of all the awesome PL researchers and hackers I met at ICFP, but it got too long to put here. (Oh, the terrible problems I have.) So, here are just some highlights:
- Derek Dreyer drew pictures of islands and worlds on graph paper for me;
- I had a conversation with Benjamin Pierce on topics including but not limited to Schumann, kerning, dependent contracts, and Hello Kitty;
- I got to have dinner with, and then draw a visual proof of the Pythagorean theorem on a napkin for, Chung-chieh Shan and Oleg Kiselyov; this "intuitive geometry" course I'm taking has officially justified its own existence, plus I got to hear Ken say, "Oh, you're that Lindsey!";
- I also got to hear Mitch Wand say, "Oh, you're that Lindsey";
- Nate Foster (whom I at first mistook for a student; oops!) actually inferred that I spent the summer working at GrammaTech, out of my idly mentioning that my summer internship was in Ithaca and located at the bottom of the hill;
- Matt Might acknowledged my existence; okay, it was to make a joke at my expense when I spilled coffee on my pants, but it was an acknowledgment nonetheless;
- I finally learned from Tim Chevalier how to pronounce "Chevalier";1
- Rob simrob Simmons is just a joy of a human being;
- I think I broke Jason jcreed Reed2 by telling him I have a twin sister;
- Ron Garcia is the nicest person ever, and patiently listened to my story of How I Learned That Objects Are Good For Something After All;
- Stevie sstrickl Strickland explained linear logic to me and introduced me to roughly five thousand Northeastern PLT people;
- Dan Licata explained intensional types in an oh-is-that-all-it-means-sheesh-now-I-understand kind of way;
- Chris chrisamaphone Martens graciously shared sleeping accommodations and running routes, and had the best hair at ICFP, as predicted, although Tim and Ron both got high marks in that category as well.
But enough of the interesting stuff. On to the boring stuff!
There were, of course, a lot of good paper presentations at ICFP. The two papers that seem to be the most closely related to the project I'm working on right now were "Logical Types for Untyped Languages", presented by Sam Tobin-Hochstadt from Northeastern, and "The Impact of Higher-Order State and Control Effects on Local Relational Reasoning", presented by Georg Neis from MPI-SWS. The latter in particular really blew my mind,3 and the former had a very nice quotation from a paper by Henglein and Rehof -- "Type testing predicates aggravate the loss of static type information" -- which is a nice, concise way of expressing what I've been trying to tell people.
In fact, after both of those talks had happened, it got much easier to explain my research to people who asked about it at the conference. Instead of having to synthesize my own elevator speech from scratch, I could just say something like, "We're working on the problem that Georg described, except swap out 'presence of call/cc' for 'presence of dynamically typed chunks of code scattered around inside statically typed code', and it's hard because of the problem that Sam described."
There were also a few talks that weren't particularly relevant to what I'm working on but which were very good. The "Lazy Tree Splitting" talk was great, because I actually understood all of it: I understood the premise, I understood the code samples, and I understood the authors' clever solution to the problem. I actually felt smarter at the end of the talk. And, of course, the "Play on Regular Expressions" was adorable, not to mention jaw-droppingly cool. When the video of the talk turns up, which I hope it does soon, everyone who teaches an undergrad automata theory course should show it to their students.
- I think next I'll work on being able to pronounce "Xavier Leroy".
- I think jcreed won ICFP. He scored a hat trick: he gave a well-received talk, was cited by name in one of the other talks, and was one of the co-winners of a prize (the Judges' Prize) in the ICFP Programming Contest. I'm pretty sure he was the only person to have accomplished all three this year.
- I think it's no coincidence, now that I look at the references, that this mind-blowing paper is also the only paper I've ever seen that cites both Dan and Amal.