Aspects of the PGG System: Specialization for Standard Scheme

  • Authors:
  • Peter Thiemann

  • Affiliations:
  • -

  • Venue:
  • Partial Evaluation - Practice and Theory, DIKU 1998 International Summer School
  • Year:
  • 1998

Quantified Score

Hi-index 0.00

Visualization

Abstract

PGG is an offline partial evaluation system for the full Scheme language, conforming to the current R5RS standeird [12]. This exposition concentrates on two aspects of the system: -- specialization of higher-order primitives; -- specialization of operations that involve state. The machinery for higher-order primitives enables the specialization of operations like eval, call-with-current-continuation, etc; specialization with state overcomes one of the major restrictions of traditional offline partial evaluators for functional languages. Both aspects require significant additions to the standard binding-time analysis for the lambda calculus, as well as to the specialization algorithm itself. We present an informal outline of the principles underlying the respective analyses and their associated specializers including motivating examples (parser generation and programming with message passing).