Papers to read

Here is a (currently incomplete) list of papers I found useful to read to learn foundations of programming languages research.
Also see the following collections:

Parallel programming

Types (Type inference, static, dynamic typing)

  • An efficient implementation of SELF a dynamically-typed object-oriented language based on prototypes. C. Chambers, D. Ungar, and E. Lee. In Conference proceedings on Object-oriented programming systems, languages and applications (OOPSLA '89). ACM, New York, NY, USA, 49-70.

Analysis of circuits/boolean programs

Static proofs for software

Model checking

Automated reasoning (Theorem proving, SAT/SMT solvers)