Course Literature

Apa
We use the following material:

Dataflow Analysis

Chapter 2 (except 2.2 and 2.6) of
Principles Of Program Analysis
Nielson, Nielson and Hankin
Corr. Second Edition
Springer Verlag
ISBN 3-540-65410-0.

(Note that this book is recommended, but not mandatory)

Abstract Interpretation

A broad overview of what AI is and where it can be applied is the webpage maintained by Patrick Cousot. [ Go there ]

  • The chapter Abstract Interpretation: a Semantics-Based Tool for Program Analysis
    Neil D. Jones and Flemming Nielson
    In "Handbook of Logic in Computer Science". Oxford University Press, 1994, pages 527-629.
    The chapter gives a good intuition about Abstract Interpretation. You may omit reading Chapter 3. [ Download ]

  • A bit more high-level, and except for the introduction, also more advanced is: Abstract Interpretation: A Theory Of Approximate Computation
    Kim Marriott
    In SAS '97 proceedings LNCS 1302, pages 367-378. [ Download ].

Together with the slides these papers should give you enough food for thought.

Type and Effect Systems:

Palsberg (PASTE 2001)
Jens Palsberg. Type-based analysis and applications. In Proceedings of the 2001 ACM SIGPLAN-SIGSOFT Workshop on Program Analysis for Software Tools and Engineering, PASTE'01, Snowbird, Utah, USA, June 18–19, 2001, pages 20–27. ACM Press, 2001.

Hage and Holdermans (PEPM 2008)
Jurriaan Hage and Stefan Holdermans. Heap recycling for lazy languages. In John Hatcliff, Robert Glück, and Oege de Moor, editors, Proceedings of the 2008 ACM SIGPLAN Symposium on Partial Evaluation and Semantics-Based Program Manipulation, PEPM'08, San Francisco, California, USA, January 7–8, 2008, pages 189–197. ACM Press, 2008.

Hage et al. (ICFP 2007)
Jurriaan Hage, Stefan Holdermans, and Arie Middelkoop. A generic usage analysis with subeffect qualifiers. In Ralf Hinze and Norman Ramsey, editors, Proceedings of the 12th ACM SIGPLAN International Conference on Functional Programming, ICFP 2007, Freiburg, Germany, October 1–3, 2007, pages 235–246. ACM Press, 2007.

Holdermans and Hage (LDTA '10)
On the Rôle of Minimal Typing Derivations in Type-driven Program Transformation, Proceedings of the Workshop on Language Descriptions Tools and Applications (LDTA '10), to be published. Download

Holdermans and Hage (PEPM '10).
_Making “stricterness” more relevant_. In John P. Gallagher and Janis Voigtländer, editors, Proceedings of the 2010 ACM SIGPLAN Workshop on Partial Evaluation and Program Manipulation, PEPM 2010, Madrid, Spain, January 18–19, 2010, pages 121–130. ACM Press, 2010. Download

Weijers, Hage and Holdermans (PEPM 2013)
Feedback Oriented Sercurity Analysis. In Proceedings of the 2013 ACM SIGPLAN Workshop on Partial Evaluation and Semantics-Based Program Manipulation, Rome, Italy. Download the thesis that forms the basis of this paper

Various topics:

Jurriaan Hage, Peter Rademaker and Nikè van Vugt
A comparison of plagiarism detection tools. To be published at CSERC '11. Download

There is also a more ``technical'' report on Marble, but it is in Dutch.

Nabil el Boustani and Jurriaan Hage
Improving Type Error Messages for Generic Java . Journal paper accepted for Higher-Order and Symbolic Computation. Download