The Unfolding Semantics of Functional Programs

08/26/2017
by   José María Rey-Poza, et al.
0

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.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
04/23/2018

Approximation Fixpoint Theory and the Well-Founded Semantics of Higher-Order Logic Programs

We define a novel, extensional, three-valued semantics for higher-order ...
research
02/28/2019

Semantics of higher-order probabilistic programs with conditioning

We present a denotational semantics for higher-order probabilistic progr...
research
04/13/2021

Extensional Denotational Semantics of Higher-Order Probabilistic Programs, Beyond the Discrete Case

We describe a mathematical structure that can give extensional denotatio...
research
11/11/2019

Recurrence Extraction for Functional Programs through Call-by-Push-Value (Extended Version)

The main way of analyzing the complexity of a program is that of extract...
research
12/23/2020

Representing Partial Programs with Blended Abstract Semantics

Synthesizing programs from examples requires searching over a vast, comb...
research
03/08/2023

Alice or Bob?: Process Polymorphism in Choreographies

We present PolyChorλ, a language for higher-order functional choreograph...
research
09/18/2019

BigData Applications from Graph Analytics to Machine Learning by Aggregates in Recursion

In the past, the semantic issues raised by the non-monotonic nature of a...

Please sign up or login with your details

Forgot password? Click here to reset