Phillip Heidegger
I'm a Ph.D. student at the University of Freiburg, Institute for Computer Science, working in the group Progλang under the supervision of Prof. Dr. Peter Thiemann. My research interest includes programming languages and static program analysis.
I work on a DFG project "Typbasierte Programmanalyse für Skriptsprachen" (typbased program analysis of scripting languages). The main goal of the project is to develop a typesystem for JavaScript that helps finding common errors in JavaScript source code. One major aspect of JavaScript is the flexible realization of its objects. It is possible to modify the objects' set of properties at runtime and use arbritary expressions to compute property labels. These labels can then be used to read properties or modify the associated values. Since this behavior of objects raises many unsolved questions, I focus my work on dealing with JavaScript objects in a static typesytem.
A second important part of my work is based on the dynamic program analysis tool JSConTest. Since some properties of dynamic languages are really hard to analyse in a static manner, JSConTest focuses on dynamic monitoring facilities to increase the quality of JavaScript software. With access contracts a JavaScript programmer can neatly express what kind of side effects a function is allowed to perform on the heap. Access contracts are also useful e.g. to establish security protocols in web pages.
Some other aspects of JavaScript that are of interest: exceptions, labeled statements, first class functions, etc.
Contact
| Address | Dipl. Inf. Phillip Heidegger Universität Freiburg Institut für Informatik Georges-Köhler-Allee 079 79110 Freiburg i. Br. Germany |
| Room | 00-017, building 079 |
| Phone | +49 761 203 8059 |
| Fax | +49 761 203 8052 |
| PGP | My public key (expires 26.03.2017), old public key (expires 05.04.2012), old public key (expired). |
Publications
- Phillip Heidegger, Peter Thiemann
JSConTest: Contract-Driven Testing and Path Effect Inference for JavaScript
Journal of Object Technology, Volume 11, no. 1, (April 2012), pp. 1-29, doi:10.5381/jot.2012.11.1.a6.
[bibtex] - Phillip Heidegger, Annette Bieniusa and Peter Thiemann
Access Permission Contracts for Scripting Languages
POPL 2012: 39th ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages
Philadelphia, USA. January 2012. - Phillip Heidegger and Peter Thiemann
A Heuristic Approach for Computing Effects
TOOLS EUROPE 2011, 49th International Conference on Objects, Models, Components, Patterns.
Zurich, Switzerland, EU. June 2011.
[bibtex] - Phillip Heidegger, Annette Bieniusa and Peter Thiemann
DOM Transactions for Testing JavaScript
In Proceedings of Testing - Practice and Research Techniques, 5th International Academic and Industrial Conference, TAIC PART 2010, Windsor, UK, September 3-5, 2010.
[bibtex] - Phillip Heidegger and Peter Thiemann
JSConTest - Contract-Driven Testing of JavaScript Code
TOOLS EUROPE 2010, 48th International Conference on Objects, Models, Components, Patterns.
Malaga, Spain, EU. June 2010.
[bibtex] - Phillip Heidegger and Peter Thiemann
Recency Types for Analyzing Scripting Languages
ECOOP 2010 - Object-Oriented Programming, 24rd European Conference
Maribor, Slovenia, EU. June 2010
[bibtex] - Phillip Heidegger and Peter Thiemann
Recency Types for Dynamically-Typed, Object-Based Languages,
International Workshop on Foundations of Object-Oriented Languages (FOOL). Savannah, Georgia, USA. January 2009
[bibtex, pdf] - Annette Bieniusa, Markus Degen, Phillip Heidegger,
Peter Thiemann, Stefan Wehr, Martin Gasbichler, Marcus Crestani,
Herbert Klaeren, Eric Knauel, and Michael Sperber
Auf dem Weg zu einer robusten Programmierausbildung
In Tagungsband zur 3. GI-Fachtagung Hochschuldidaktik Informatik. Potsdam, Germany. December 2008. - Annette Bieniusa, Marcus Crestani, Markus Degen,
Martin Gasbichler, Phillip Heidegger, Herbert Klaeren,
Eric Knauel, Michael Sperber, Peter Thiemann,
and Stefan Wehr
HtDP and DMdA in the Battlefield - A Case Study in First-year Programming Instruction
In Proceedings of the 2008 Workshop Functional and Declarative Programming in Education. 2008. - Phillip Heidegger
Typbasierte Werkzeuge für Fehlersuche und Wartung von JavaScript Programmen
Diplomarbeit. Albert-Ludwigs-Universität Freiburg, Technische Fakultät, Institut für Informatik, Januar 2007. - Phillip Heidegger
Statische Stringanalyse
Studienarbeit. Albert-Ludwigs-Universität Freiburg, Technische Fakultät, Institut für Informatik, Juli 2006.
Talks
- Access Permission Contracts for Scripting Languages
Philadelphia, USA, 2012.
slides - DOM Transactions for Testing JavaScript
Windsor, England, 2010.
slides - JSConTest Contract-Driven Testing of JavaScript Code
Malaga, Spain, 2010.
slides - Recency Types for Analyzing Scripting Languages
Maribor, Slovenia, 2010.
slides (odp) - Recency Types for Dynamically-Typed, Object-Based Languages
Savannah, USA, Jan 2009.
slides (odp) - Recency Types for Dynamically-Typed, Object-Based Languages
La Plata, Argentina, Oct 2008
slides - Type system for Javascript
6tas. Jornadas de Ciencias de la Computacion
Rosario, Argentina, Oct 2008
slides, abstract -
Statisches Typen von JavaScript Programmen
25. Workshop der GI-Fachgruppe Programmiersprachen und Rechenkonzepte
Bad Honnef, Germany, Mai 2008.
slides, extended abstract - Typbasierte Analyse von JavaScript
4. Kolloquium Programmiersprachen und Grundlagen der Programmierung (KPS'07)
Timmendorfer Strand, Germany, October 2007
slides, extended abstract -
Typbasierte Analysen fuer JavaScript
24. Workshop der GI-Fachgruppe Programmiersprachen und Rechenkonzepte
Bad Honnef, Germany, Mai 2007.
slides, abstract
Teaching
courses I co-organized
- Concurrency: Theory and Practise, WS 2010/2011, together with Annette Bieniusa
- Algorithms Theory, WS 2009/2010 together with Marco Muñiz
- Programmierzertifikat Objekt-Orientierung mit Java, SS 2009
- Softwareentwicklungsmethoden, SS 2009 (access only for students with a login)
- Webprogrammierung mit Template-Genie, WS 2008/2009
- Webprogrammierung und Teammanagment, WS 2008/2009
- Programmierzertifikat Objekt-Orientierung mit Java, SS 2008
- Informatik I, WS 2007/2008
- Webprojekt, WS 2007/2008
other teaching activities
- Informatik I, WS 2008/2009
- Seminar: Type Systems, WS 2008/2009
- Softwaretechnik , SS 2008
- assist supervising bachelor thesis of Malte Ahl, SS 2009, in German
- assist supervising diploma thesis
(comparable to a master thesis) of Stefan Teichtweier,
WS 2007/2008, in German,
Title: Modellgetriebene Softwareentwicklung formularbasierter Anwendungen - assist supervising bachelor thesis of Matthias Sauer,
SS 2007, in German,
Title: "Template-Genie" - Eine Java-Template-Engine zur generischen Erzeugung sprachunabhängiger Websites -
assist supervising thesis of Stefan Teichtweier, SS 2007,
in German,
Title: Metamodellierung bei der formbasierten Analyse
Subtitle: Modelgetriebene Softwareentwicklung mit OpenArchitectureWare und dem Eclipse Graphical Modelling Framework