Programming Languages Reading Group


We meet weekly on Friday (1300-1400) in CO255 and discuss Programming Languages research. Michael Homer is the contact person. Note that this forms essential part of the Programming Languages Research Group.

Mailing List

Subscribe to the PL Group mailing list for meeting times and info:



24/03/17 --- Do be do be do. Sam Lindley, Conor McBride, Craig McLaughlin. In POPL 2017 LINK

17/03/17 --- Always-available static and dynamic feedback. Michael Bayne, Richard Cook, Michael D. Ernst. In ICSE'11. LINK

10/03/17 --- Browsix: Bridging the Gap Between Unix and the Browser. Bobby Powers, John Vilk, Emery D. Berger. In ASPLOS 2017. LINK

03/03/17 --- Liberating the programmer with prorogued programming. Mehrdad Afshari, Earl T. Barr, and Zhendong Su. In Onward! 2012. LINK

24/02/17 --- Asynchronous Functional Reactive Programming for GUIs. Evan Czaplicki, Stephen Chong. In PLDI'13. LINK and see also live-coding Mario and/or an introductory presentation from ELC 2012.

17/02/17 --- Declarative Interaction Design for Data Visualization. Arvind Satyanarayan, Kanit Wongsuphasawat, Jeffrey Heer. In UIST'14. LINK

10/02/17 --- Phrase-Based Statistical Translation of Programming Languages. Svetoslav Karaivanov, Veselin Raychev, Martin Vechev. In Onward! 2014. LINK

03/02/17 --- Extensible Model for Comparison of Expressiveness of Object-Oriented Programming Languages. Ruslan Batdalov, Oksana Ņikiforova, Adrian Giurca. In Applied Computer Systems. LINK

27/01/17 --- Learning Syntactic Program Transformations from Examples. Reudismam Rolim, Gustavo Soares, Loris D’antoni, Oleksandr Polozov, Sumit Gulwani, Rohit Gheyi, Ryo Suzuki and Bjorn Hartmann. In ICSE'17. LINK

20/01/17 --- How are Programs Found? Speculating About Language Ergonomics With Curry-Howard. Johannes Emerich. In Onward!'16. LINK

13/01/17 --- What Is a Programming Language, Really? Andrew J. Ko. In PLATEAU'16 LINK


12/12/16 --- Verifying Quantitative Reliability for Programs that Execute on Unreliable Hardware, Michael Carbin, Sasa Misailovic, Martin C. Rinard. In CACM'16 LINK

02/12/16 --- Type Soundness for Dependent Object Types (DOT), Tiark Rompf and Nada Amin. In OOPSLA'16 LINK

25/11/16 --- Java and scala's type systems are unsound: the existential crisis of null pointers. Nada Amin, Ross Tate. In OOPSLA'16 LINK

28/10/16 --- Lightweight programming experiments without programmers and programs: an example study on the effect of similarity and number of object identifiers on the readability of source code using natural texts, Marter et al. In ONWARD'16 LINK

21/10/16 --- An empirical study on the impact of C++ lambdas and programmer experience, Phillip Merlin Uesbeck et al, in ICSE'16. LINK

14/10/16 --- Types from data: Making structured data first-class citizens in F#, Petricek et al. In PLDI'16 LINK

07/10/16 --- Learning to Program is Easy, Luxton-Reilly et al. In ITiCSE'16 LINK

30/09/16 --- Fine-grained Language Composition: A Case Study, Barrett et al. In ECOOP'16 LINK

09/09/16 --- Semantic Versioning versus Breaking Changes: A Study of the Maven Repository, Raemaekers et al. In SCAM'14 LINK

02/09/16 --- Failure is a Four-Letter Word: A Parody in Empirical Research, Zeller et al. In PROMISE'11 LINK

26/08/16 --- Contracts in Practice, Estler et al. In FM2014 LINK

19/08/16 --- Assert use in Github Projects, Casey Casalnuovo, et al. In ICSE'15 LINK

12/08/16 --- Rehearsal: a configuration verification tool for puppet, Rian Shambaugh, et al. In PLDI'16 LINK

15/07/16 --- Into the Depths of C: Elaborating the De Facto Standards, Kayvan Memarian, et al. In PLDI'16 LINK

08/07/16 --- Coverage-directed differential testing of JVM implementations, Yuting Chen, et al. In PLDI'16. LINK

24/06/16 --- A Mechanical Soundness Proof for Subtyping over Recursive Types, Timothy Jones and David J. Pearce. In FTfJP'16. LINK

17/06/16 --- Tim Jones gave practice talk for ECOOP paper

10/06/16 42 --- The definitive answer to design, code and everything. A discussion with Marco Servetto on his language 42.

27/05/16 On the techniques we create, the tools we build, and their misalignments: a study of KLEE, Eric F. Rizzi, Sebastian Elbaum, Matthew B. Dwyer. In ICSE'16. LINK

20/05/16 Reference Capabilities for Concurrency Control, Elias Castegren and Tobias Wrigstad. In ECOOP'16 LINK

13/05/16 Lessons Learned from 30 Years of MINIX, Andrew S. Tanenbaum. In CACM, 2016. LINK

06/05/16 All Syntax Errors are Not Equal, Paul Denny, Andrew Luxton-Reilly, Ewan Tempero. In ITiCSE '12. LINK

29/04/16 37 Million Compilations: Investigating Novice Programming Mistakes in Large-Scale Student Data. In SIGCSE'15 LINK

29/04/16 Investigating Novice Programming Mistakes: Educator Beliefs vs Student Data. In ICER'14 LINK

22/04/2016 Impendulo: debugging the programmer, Willem Visser, Jaco Geldenhuys. In ASE'10. LINK

15/04/2016 Classless Java LINK

08/04/2016 Object Inheritance without Classes, Timothy Jones, Michael Homer, James Noble, and Kim Bruce. In ECOOP'16 LINK

03/03/2016 None, One, Many – What’s the Difference, Anyhow? Friedrich Steimann. In SNAPL'15 LINK

18/02/2016 The Silently Shifting Semicolon, Daniel Marino, Todd Millstein, et al. In SNAPL'15 LINK

11/02/2016 Type systems for the masses: deriving soundness proofs and efficient checkers, Sylvia Grewe1 et al. In Onward 2015. LINK

05/02/2016 Mechanized Verification of Fine-grained Concurrent Programs, Ilya Sergey et al. In PLDI'16 LINK. See also Short Video.

29/09/2016 Is Sound Gradual Typing Dead?, Asumu Takikawa, et al. In POPL'16 LINK

22/01/2016 seL4: Formal verification of an OS kernel, Gerwin Klein, Kevin Elphinstone, et al. In SOSP'09 (Best Paper Award) LINK

15/01/2016 The Expression Problem, Trivially!, Yanlin Wang and Bruno Oliveira. In MODULATIRY'16. LINK


11/12/2015 Defining the undefinedness of C, Chris Hathhorn, Chucky Ellison, Grigore Roşu. In PLDI'15. LINK

20/11/2015 Towards a Dynamic Object Model within Unix Processes, Stephen Kell. In Onward!'15. LINK

06/11/2015 Disjointness Domains for Fine-Grained Aliasing, Stephan Brandauer, Dave Clarke, and Tobias Wrigstad. In SPLASH'15. LINK

02/10/2015 A Sound and Optimal Incremental Build System with Dynamic Dependencies, Sebastian Erdweg, Moritz Lichter and Manuel Weiel. In OOPSLA15. LINK

25/09/2015 Classes versus Prototypes in Object-Oriented Languages, Alan Borning. In ACM'86. LINK

11/09/2015 Practical principled FRP: forget the past, change the future, FRPNow!, Atze van der Ploeg and Koen Claessen. In ICFP'15. LINK

04/09/2015 Using Commutative Assessments to Compare Conceptual Understanding in Blocks-based and Text-based Programs, David Weintrop and Uri Wilensky. In ICER'15. LINK

28/08/2015 Transparent Object Proxies for JavaScript, Matthias Keil, Sankha Narayan Guria, Andrewas Schlegel, Manuel Geffken, and Peter Thiemann. In ECOOP'15. LINK

19/08/2015 How Scale Affects Structure in Java Programs, Cristina V. Lopes and Joel Ossher. In OOPSLA'15. LINK

14/08/2015 Lightweight Support for Magic Wands in an Automatic Verifier, Malte Schwerhoff and Alexander J. Summers. In ECOOP'15 LINK

07/08/2015 *"Talos", Clint Talbert and Joel Maher. LINK

31/07/2015 How Programmers Read Regular Code: A Controlled Experiment Using Eye Tracking, Ahmad Jbara and Dror G. Feitelson. In ICSE'2015. LINK

24/07/2015 An introduction to the Rust programming language and its type system, Nick Cameron. ECS Seminar. LINK

17/07/2015 The Good, the Bad, and the Ugly: An Empirical Study of Implicit Type Conversions in JavaScript, Michael Pradel and Koushik Sen. In ECOOP'15 LINK

10/07/2015 Polymorphic Blocks: Formalism-Inspired UI for Structured Connectors, Sorin Lerner Stephen R. Foster William G. Griswold. In CHI'15 LINK

03/07/2015 Operators and precedence in programming language design (PhD Proposal Presentation Practice), Najwani Razali.

26/06/2015 - Brand Objects for Nominal Typing (practice presentation), By Tim Jones, Micheal Homer and James Noble. In ECOOP'15 LINK

19/06/2015 - Who Builds a House without Drawing Blueprints?. By Leslie Lamport. In CACM, 2015. LINK

12/06/2015 - Towards Practical Gradual Typing, Asumu Takikawa, Daniel Feltey, Earl Dean, Matthew Flatt, Robert Bruce Findler, Sam Tobin-Hochstadt, and Matthias Felleisen

28/05/2015 - A Theory of Tagged Objects, Joseph Lee, Jonathan Aldrich, Troy Shaw, and Alex Potanin. In ECOOP'15 (to appear) LINK

21/05/2015 - Swapsies on the Internet, Sophia Drossopoulou, James Noble and Mark Miller, Technical Report, 2015. LINK

14/05/2015 - Concrete Types for TypeScript, Gregor Richards, Francesco Zappa Nardelli, and Jan Vitek. In ECOOP'15 (to appear) LINK

01/05/2015 - An Empirical Study of the Impact of Modern Code Review Practices on Software Quality, Shane McIntosh, Yasutaka Kamei, Bram Adams, and Ahmed E. Hassan. In ESE'15 (to appear) LINK

24/04/2015 - Zero-Overhead Metaprogramming: Reflection and Metaobject Protocols Fast and without Compromises. Stefan Marr, Chris Seaton and Stephane Ducasse. In PLDI'15. LINK

20/03/2015 - A Theory of Name Resolution. Pierre Neron, Andrew Tolmach, Eelco Visser and Guido Wachsmuth. In ESOP'15 LINK

13/03/2015 - Brand Objects for Nominal Typing. Timothy Jones, Michael Homer, and James Noble. In ECOOP'15, to appear.

06/03/2015 - Moving Fast with Software Verification, Cristiano Calcagno, Dino Distefano, Jeremy Dubreil, Dominik Gabi, Pieter Hooimeijer, Martino Luca, Irene Papakonstantinou, Jim Purbrick, Dulma Rodriguez. NASA Formal Method Symposium '11 LINK

20/02/2015 - James Greenwood-Thesman giving technical talk about his summer project.

13/02/2015 - Isolation of Malicious External Inputs in a Security Focused Adaptive Execution Environment, Aaron Paulos, Partha Pal, Richard Schantz, Brett Benyo, David Johnson, Mike Hibler, and Eric Eide. ARES'13 LINK

30/01/2015 - Don’t Sweat the Small Stuff: Formal Verification of C Code Without the Pain, David Greenaway Japheth Lim June Andronick Gerwin Klein, PLDI, 2014. LINK

23/01/2015 - Pycket: A Tracing JIT For a Functional Language, Spenser Bauman, Carl Friedrich Bolz, Robert Hirschfeld, Vasily Krilichev, Tobias Pape, Jeremy Siek, Sam Tobin-Hochstad.( LINK)


Topic attachments
I Attachment Action Size Date Who Comment
RiskAndTrust.pdfpdf RiskAndTrust.pdf manage 326 K 19 May 2015 - 16:44 Main.djp