Partial Evaluation of the Euclidian Algorithm

Olivier Danvy, Mayer Goldberg

Research output: Contribution to journalArticlepeer-review

1 Scopus citations


Some programs are easily amenable to partial evaluation because their control flow clearly depends on one of their parameters. Specializing such programs with respect to this parameter eliminates the associated interpretive overhead. Some other programs, however, do not exhibit this interpreter-like behavior. Each of them presents a challenge for partial evaluation. The Euclidian algorithm is one of them, and in this article, we make it amenable to partial evaluation. We observe that the number of iterations in the Euclidian algorithm is bounded by a number that can be computed given either of the two arguments. We thus rephrase this algorithm using bounded recursion. The resulting program is better suited for automatic unfolding and thus for partial evaluation. Its specialization is efficient.

Original languageEnglish
Pages (from-to)101-111
Number of pages11
JournalLISP and Symbolic Computation
Issue number2
StatePublished - 1 Jul 1997
Externally publishedYes


  • Partial evaluation
  • Scientific computation

ASJC Scopus subject areas

  • Software
  • Computer Science Applications


Dive into the research topics of 'Partial Evaluation of the Euclidian Algorithm'. Together they form a unique fingerprint.

Cite this