DIKU ITU KVL

Copenhagen Programming Language Seminar

COPLAS Talk

Program Generation, Termination, and Binding-time Analysis

Neil D. Jones
DIKU, University of Copenhagen

Thursday, September 19th, 15:15-16:00
ITU, Glentevej 67, room 2.03

Abstract:

Recent research suggests that the goal of fully automatic and reliable program generation for a broad range of applications his coming nearer to feasibility. However, several interesting and challenging problems remain to be solved before it becomes a reality. Solving them is also necessary if we hope ever to elevate software engineering from its current state (a highly-developed handiwork) into a successful branch of engineering, capable of solving a wide range of new problems by systematic, well-automated and well-founded methods.

We first discuss the relations between problem specifications and their solutions in program form, and then narrow the discussion to an important special case: program transformation.  Although the goal of fully automatic program generation is still far from fully achieved, there has been some success in a special case: partial evaluation, also known as program specialization.

A key problem in all program generation is termination of the generation process. This talk describes recent progress towards automatically solving the termination problem, first for individual programs, and then for specializers and generating extensions', the program generators that most offline partial evaluators produce. The talk ends with a list of challenging problems whose solution would bring the community closer to the goal of broad-spectrum, fully automatic and reliable program generation.

Scientific host: Andrzej Filinski. Administrative host: Camilla Jørgensen. All are welcome.
The Copenhagen Programming Language Seminar (COPLAS) is a collaboration between DIKU, IT-C and KVL.
To receive information about COPLAS talks by email, send a message to prog-lang-request@mail.it-c.dk with the word 'subscribe' as subject or in the body.

For more information about COPLAS, see http://www.coplas.org