This quarter, 590P will be a combination of 590P and 590N, surveying research at the intersection of programming languages and software engineering.
We will be focusing on the understanding, manipulation, analysis, and testing of program families. A program family arises from writing a program such that it runs differently in different environments. E.g., an email client may run on your desktop or your cellphone. It is effectively two programs (i.e., a family) being maintained in a unified source base.
Format: If possible, talks will be shorter than usual (30 min or so) and we will use the rest of the time for discussion. Presenters are encouraged to bring a list of pertinent questions to spark discussion. Participants are highly encouraged to read the papers in advance and bring questions.