A Memoization Semantics for Functional Logic Languages


Authors

S. Espaņa and V. Estruch

Abstract

Declarative multi-paradigm languages combine the main features of functional and logic programming, like laziness, logic variables and non-determinism. The operational semantics of these languages is based on a combination of narrowing and residuation. In this article, we introduce a non-standard memoizing} semantics for multi-paradigm declarative programs and prove the completeness w.r.t. the standard operational semantics. Both pure functional and pure logic programming have for long time taken advantage of tabling or memoizing schemes [hughes85,tamakisato86,chen96tabled], which motivates the interest in the adapation of this technique to the integrated paradigm.

Keywords

Programming languages, formal semantics, memoization.