Course: Partial Evaluation - Practice and Theory (Jens Peter Secher)
27 May 1998 22:03:19 -0400

          From comp.compilers

Related articles
Course: Partial Evaluation - Practice and Theory (1998-05-27)
| List of all articles for this month |

From: (Jens Peter Secher)
Newsgroups: comp.compilers,,comp.theory,sci.logic
Date: 27 May 1998 22:03:19 -0400
Organization: Department of Computer Science, U of Copenhagen
Distribution: inet
Keywords: courses, tools

          DIKU International Summer School '98:

    | Partial Evaluation - Practice and Theory |
    | June 29 - July 10, 1998 |

Organizing Committee
    Neil D. Jones
    Jesper J{\o}rgensen
    Jens Peter Secher
    Morten Heine B. S{\o}rensen (chair,

Program specialization, also known as partial evaluation, is an
automatic tool for program optimization, similar in concept to but in
several ways stronger than a highly optimizing compiler. It is a
source-to-source staging transformation: a program $p$ together with
partial data $s$ are transformed into an often faster specialized
version $p_s$ by precomputing parts of $p$ that depend only on $s$.
The possibility, in principle, of partial evaluation is contained in
Kleene's classical s-m-n theorem.

Specialization is worthwhile when $p$ runs for a long time, and $p_s$
is significantly faster than $p$. Suitable problem types include:
Highly parameterized computations that use much time consulting
parameters, but are often run using the same parameter settings;
programs with many similar subcomputations; programs of a highly
interpretive nature, e.g., circuit and other simulators,
where specialization removes the time to scan the object being
simulated; database query search algorithms; and meta-programming,
where a problem is solved by designing a user-oriented language and an
interpreter for it.

Partial evaluators have been successfully applied to generate
efficient specialized programs for ray tracing, for the Fast Fourier
transform, and for circuit and planetary simulations. Partial
evaluators have also been used to compile using interpreters for
programming languages and to generate compilers from interpreters.

The DIKU International Summer School '98 on Partial
Evaluation offers a practical introduction to several existing partial
evaluators, including the opportunity for guided hands-on experience,
as well as the presentation of some more sophisticated theory,
systems, and applications. Lectures will be given by some of the
leading researchers in the field.

The summer school runs for two weeks. The first week is practically
oriented, focusing on a number of partial evaluation systems, mainly
developed at DIKU. The second week combines practical
experience with more sophisticated theory, systems, and applications.
It is possible to follow each of the two weeks on its own.

Lectures and Topics
Torben Mogensen Introduction, applications, inherited limits
John Hatcliff Foundations of PE and program specialization
Jens Peter Secher C-mix
Jesper J{\o}rgensen Similix
Lennart Augustsson PE for aircraft crew scheduling
Neil Jones Lambda-mix
Satnam Singh Hardware specialization
Jesper J{\o}rgensen & Multi-level specialization
Robert Gl{\"u}ck
Morten H. B. S{\o}rensen Supercompilation
John Hughes Type specialization
Michael Leuschel Advanced logic program specialization
Julia Lawall Specialization of an implementation of the FFT
Jens Palsberg Eta-redexes
Olivier Danvy Type-directed partial evaluation
Peter Thiemann Aspects of the PGG system

Deadline for registration
May 29, 1998

Post a followup to this message

Return to the comp.compilers page.
Search the comp.compilers archives again.