The ζ-Semantics: A Comprehensive Semantics for Functional Programs

  • Authors:
  • Olaf Chitil

  • Affiliations:
  • Lehrstuhl für Informatik II, Aachen University of Technology, 52056 Aachen, Germany. chitil@informatik.rwth-aachen.de, http://www-i2.informatik.RWTH-Aachen.de/-chitil

  • Venue:
  • Fundamenta Informaticae
  • Year:
  • 1997

Quantified Score

Hi-index 0.00

Visualization

Abstract

A comprehensive semantics for functional programs is presented, which generalizes the well-known call-by-value and call-by-name semantics. By permitting a separate choice between call-by value and call-by-name for every argument position of every function and parameterizing the semantics by this choice we abstract from the parameter-passing mechanism. Thus common and distinguishing features of all instances of the ζ-semantics, especially call-by-value and call-by-name semantics, are highlighted. Furthermore, a property can be validated for all instances of the ζ-semantics by a single proof. This is employed for proving the equivalence of the given denotational (fixed-point based) and two operational (reduction based) definitions of the ζ-semantics. We present and apply means for very simple proofs of equivalence with the denotational ζ-semantics for a large class of reduction-based ζ-semantics. Our basis are simple first-order constructor-based functional programs with patterns.