Last week, Northeastern hosted a PI meeting for the Gradual Typing Across the Spectrum NSF grant. The meeting was made of 20+ researchers from four institutions, and 12 technical talks. Schedule:
A common thread among the talks was the question: how to convert a research idea into a tool for software developers?
This year I reviewed many ICFP submissions, and got to be on the receiving end of equally many author responses (also sometimes called, somewhat combatively, rebuttals). I found that there was a large difference between the official written advice on author responses and what I, as a reviewer reading the responses, found effective. In particular, I now believe that limiting yourself to 500 words should strongly be avoided — we should even stop giving that advice.
From the PRL archives:
I think that I shall never see a matrix lovely as a tree. — Trees, by Guy L. Steele Jr., MIT, 1973
From the PRL archives:
It was also a concept that grabbed my mind, ran off with it, and only returned it after substantial renovation and expansion. — Continuations by Alan Nall, Indiana University, 1983
The ACM recently hosted a celebration of 50 years of the A.M. Turing award. These are some notes and thoughts from the event, including how Fred Brooks once rented a bus, Don Knuth’s outrageous implementation of batch processing, and Judea Pearl’s theory of homo sapiens.
The PL Junior Seminar is for beginning PhD and interested undergrad and masters students to understand the foundations of programming languages research. It serves to fill in background knowledge and get up to speed with different areas of PL research.
For the spring 2017 instance of PL Junior we chose program synthesis, the sequent calculus, and logic programming as topics we wanted to learn more about. We also did two group paper readings for Luca Cardelli’s Typeful Programming and Alan Kay’s Early History of Smalltalk. At the same time, we changed up the format from the previous semester.
Two weeks ago, I attended the first Programming Language Implementation Summer School, held in beautiful Bertinoro, Italy.
The goal of PLISS was “to prepare early graduate students and advanced undergraduates for research in the field,” and I think it successfully accomplished that. There were many talks in a variety of areas, such as just-in-time compilers, garbage collection, static analysis, and distributed systems. But PLISS was more than just a series of talks: PLISS provided an environment for interacting with other students as well as senior researchers.
In this blog post, reporting on a collaboration with Li-Yao Xia, I will show an example of how some results that we traditionally think of as arising from free theorems / parametricity can be established in a purely “syntactic” way, by looking at the structure of canonical derivations. More precisely, I prove that
is isomorphic to
is the type of integers smaller than
, corresponding to the set
Racket 6.9 was released in April and it has been smooth sailing for many people. However, some people using the Windows 10 Creators Update have been experiencing crashes, not just for Racket, but for the whole operating system. This is due to a bug in Windows. We have contacted Microsoft; they have classified the bug as (1) a stack overflow and (2) not a security hazard, and intend to add a fix in a future version of Windows.
The next version of Racket will include a patch to help avoid triggering the bug. Until then, one work-around is to run Racket in a virtual machine (VM). This blog post is a step-by-step guide on how to install a VM for Racket.
A VirtualBox image with Racket preinstalled can be downloaded here:
The username and password for this machine are both