-------++ Monday, January 7, 2008 ------+++ Opening: 8:45 - 9:00 ------+++ Invited Talk 1: 9:00 - 10:00 * Ras Bodik. Program Synthesis by Sketching. _Coffee break_ ------+++ Session 1: 10:30 - 12:00 (Staging and Program Manipulation) * Isabella Mastroeni, Damiano Zanardini. Data dependencies and program slicing: From syntax to abstract semantics. * Djoko Djoko Simplice, Rémi Douence, Pascal Fradet. Aspects Preserving Properties. * Yukiyoshi Kameyama, Oleg Kiselyov, Chung-chieh Shan. Closing the Stage: From staged code to typed closures. _Lunch_ ------+++ Session 2: 13:30 - 15:30 (Program Transformation and Derivation) * Janis Voigtländer. Proving correctness via free theorems. The case of the destroy/build-rule. * Torben Mogensen. Semi-Inversion of Functional Parameters. * Shin-Cheng Mu. Maximum Segment Sum is Back - Deriving Algorithms for Two Segment Problems with Bounded Lengths. * Huiqing Li, Simon Thompson. Tool Support for Refactoring Functional Programs (Tool Demonstration). _Coffee break_ ------+++ Session 3: 16:00 - 17:30 (Program Optimization) * Stephen A. Edwards and Jia Zeng. Static Elaboration of Recursion for Concurrent Software. * Jakob Puchinger and Peter Stuckey. Automating Branch-and-Bound for Dynamic Programs. * Ando Saabas and Tarmo Uustalu. Proof optimization for partial redundancy elimination. -------++ Tuesday, January 8, 2008 ------+++ Invited Talk 2: 9:00 - 10:00 * Monica Lam: Combining Static and Dynamic Analysis for Securing Web Applications. _Coffee break_ ------+++ Session 4: 10:30 - 12:00 (Partial Evaluation) * Ping Zhu, Siau-Cheng Khoo. Specialization for Applications Using Shared Libraries. * Boris Feigin, Alan Mycroft. Jones Optimality and Hardware Virtualization. * Corneliu Popeea, Dana N. Xu, Wei-Ngan Chin. A Practical Inference and Specializer for Array Bound Checks Elimination. _Lunch_ ------+++ Session 5: 13:30 - 15:30 (Parsing and Functional Programming) * Alessandro Warth, James Douglass and Todd Millstein. Packrat Parsers Can Support Left Recursion. * Nic Volanschi and Christian Rinderknecht. Unparsed Patterns: Easy User-Extensibility of Program Manipulation Tools. * Jurriaan Hage, Stefan Holdermans. Heap Recycling for Lazy Languages. * Daniel Prusa and Jan Jancura. Generic Framework for Integration of Programming Languages into Net Beans IDE (Tool Demonstration). _Coffee break_ ------+++ Session 6: 16:00 - 17:30 (Verification and Synthesis) * Jennifer Gillenwater, Gregory Malecha, Cherif Salama, Angela Yun Zhu, Walid Taha, Jim Grundy, John O'Leary. Synthesizable High Level Hardware Descriptions. * Nik Sultana, Simon Thompson. Mechanical verification of refactorings. * Pawel Pietrzak, Jesús Correas Fernández, German Puebla, Manuel Hermenegildo. A Practical Type Analysis for Verification of Modular Prolog Programs.