English

The Unfolding Semantics of Functional Programs

Programming Languages 2017-08-29 v1

Abstract

The idea of using unfolding as a way of computing a program semantics has been applied successfully to logic programs and has shown itself a powerful tool that provides concrete, implementable results, as its outcome is actually source code. Thus, it can be used for characterizing not-so-declarative constructs in mostly declarative languages, or for static analysis. However, unfolding-based semantics has not yet been applied to higher-order, lazy functional programs, perhaps because some functional features absent in logic programs make the correspondence between execution and unfolding not as straightforward. This work presents an unfolding semantics for higher-order, lazy functional programs and proves its adequacy with respect to a given operational semantics. Finally, we introduce some applications of our semantics.

Keywords

Cite

@article{arxiv.1708.08003,
  title  = {The Unfolding Semantics of Functional Programs},
  author = {José María Rey-Poza and Julio Mariño-Carballo},
  journal= {arXiv preprint arXiv:1708.08003},
  year   = {2017}
}
R2 v1 2026-06-22T21:24:20.594Z