Tags: pl, fp, icfp
In the past week, I attended the International Conference on Functional Programming, ICFP 2018, which in this year was held in the city St. Louis. Clearly, this is not the most lucrative location for an international academic conference, but it doesn’t make much difference anyway, as there was little time for sightseeing: at least it was a relatively cheap place not too far from Boston!
Anyways, the conference was great: I got to meet people I already know (Ron, Joomy, Dave, etc., and of course Jacques), what not, and some people I don’t yet know (Cyrus, William and Matthieu, especially). There were also some interesting talks. Here are the talks I liked the most, all with papers rather worth reading:
- Build Systems à la Carte: another classic Simon Peyton Jones talk, which is obviously fun and easy to follow.
- Prototyping a Functional Language using Higher-Order Logic Programming: A Functional Pearl on Learning the Ways of λProlog/Makam: very interesting and powerful idea, presented in a easy-to-follow manner. The tedious technical details were appropriately cut out, with the most beautiful pieces kept intact.
- Capturing the Future by Replaying the Past: interesting idea and pretty straightforward technical insight, but put together in a really creative way. We all know that delimited continuations are cool and could in principle be easily implemented, but no one has done it as beautifully as it is!
- MoSeL: A General, Extensible Modal Framework for Interactive Proofs in Separation Logic and Mtac2: Typed Tactics for Backward Reasoning in Coq: two papers from Derek’s RustBelt project at MPI-SWS. Very interesting tools, very straightforward presentation, very easy to understand as a consequence.
- Equivalences for Free: Univalent Parametricity for Effective Transport: technically difficult, but the high-level idea was presented in a clear and simple way. Also motivated the work very well.
In addition, I think Handling Delimited Continuations with Dependent Types would also make a great presentation had Youyou been able to make it to St. Louis to present the paper; Asai-sensei was interesting and pretty good at giving talks (I think), but unfortunately he just wasn’t familiar enough with the technical details and clearly was rather under-prepared: it is not really his fault, though.
But ICFP isn’t really all about the talks — if I’m really interested in the talks and technical details, I’d just watch the YouTube videos and read the papers. In many ways, it’s mostly about having unexpected conversations about your (and their) work. In this sense, co-location with Strange Loop is a great idea — it helps us (or rather, forces us) to make connections with the industry and the people just “out there”. By the way, it was also co-located with RacketCon, in practice — but the ICFP organizers did not do a good job advertising this, what a pity!
But there were also some downsides to co-location. The usual banquet was cancelled, and instead we merged with the Strange Loop party. To be honest, the party was really cool, but was not as interesting as the banquet. The museum was too large, and many ICFP participants just didn’t go because it’s “not the banquet”, depriving it of one of the most important functionalities of the ICFP banquet: increased mingling and opportunities to just meet and talk to people. On the other hand, in light of what has happened last year, probably this “buy your own food” model is better: instead of we (or our departments, or our poor taxpayers) paying for the $100 banquet ticket in exchange for some prison-grade food, we’d rather pay for ourselves and know what we’re paying for. Maybe we should just set up some sausage, doner, beer and what not vendors at the banquet venue next year and have our traditional ICFP banquet (without the banquet ticket model).
Having attended ICFP twice, my experience was overwhelmingly positive — many good talks, interesting people, unexpectedly delightful conversations. I would recommend anyone to go if they are interested in functional programming!