AbstractIn recent years much interest has been shown in a class of functional languages including HASKELL, lazy ML, SASL/KRC/MIRANDA, ALFL, ORWELL, and PONDER. It has been seen that their expressive power is great, programs are compact, and program manipulation and transformation is much easier than with imperative languages or more traditional applicative ones. Common characteristics: they are purely applicative, manipulate trees as data objects, use pattern matching both to determine control flow and to decompose compound data structures, and use a “lazy” evaluation strategy.In this paper we describe a technique for data flow analysis of programs in this class by safely approximating the behavior of a certain class of term rewriting syste...
AbstractThere are several proposals for extending Prolog with functional capabilities. The basic ide...
We explore a novel approach to higher-order program analysis that brings ideas of on-demand lookup f...
Program slicing is a well known family of techniques intended to identify and isolate code fragments...
Program slicing is a well known family of techniques intended to identify and isolate code fragments...
AbstractIn lazy functional languages, any variable is evaluated at most once. This paper proposes th...
The collecting semantics of a program defines the strongest static property of interest. We study th...
International audienceWe show how the complexity of higher-order functional programs can be analysed...
AbstractExpression evaluation in lazy applicative languages is usually implemented by an expensive m...
International audienceWe show how the complexity of higher-order functional programs can be analysed...
Lazy functional languages such as LML [4], Haskell [21], and Concurrent Clean [35] typically feature...
AbstractWe develop a natural technique for defining functions in logic, i.e. PROLOG, which directly ...
In this paper we present a model of interactive programs in a purely functional style. We exploit l...
AbstractWe discuss the use of the lazy evaluation scheme as coding tool in some algebraic manipulati...
A computation tree of a program execution describes computations of functions and their dependencies...
AbstractLazy rewriting is a proper restriction of term rewriting that dynamically restricts the redu...
AbstractThere are several proposals for extending Prolog with functional capabilities. The basic ide...
We explore a novel approach to higher-order program analysis that brings ideas of on-demand lookup f...
Program slicing is a well known family of techniques intended to identify and isolate code fragments...
Program slicing is a well known family of techniques intended to identify and isolate code fragments...
AbstractIn lazy functional languages, any variable is evaluated at most once. This paper proposes th...
The collecting semantics of a program defines the strongest static property of interest. We study th...
International audienceWe show how the complexity of higher-order functional programs can be analysed...
AbstractExpression evaluation in lazy applicative languages is usually implemented by an expensive m...
International audienceWe show how the complexity of higher-order functional programs can be analysed...
Lazy functional languages such as LML [4], Haskell [21], and Concurrent Clean [35] typically feature...
AbstractWe develop a natural technique for defining functions in logic, i.e. PROLOG, which directly ...
In this paper we present a model of interactive programs in a purely functional style. We exploit l...
AbstractWe discuss the use of the lazy evaluation scheme as coding tool in some algebraic manipulati...
A computation tree of a program execution describes computations of functions and their dependencies...
AbstractLazy rewriting is a proper restriction of term rewriting that dynamically restricts the redu...
AbstractThere are several proposals for extending Prolog with functional capabilities. The basic ide...
We explore a novel approach to higher-order program analysis that brings ideas of on-demand lookup f...
Program slicing is a well known family of techniques intended to identify and isolate code fragments...