Computing Executable Slices for Concurrent Logic Programs
نویسندگان
چکیده
Program Slicing has many applications in software engineering activities. However, until recently, no slicing algorithm has been presented that can compute executable slices for concurrent logic programs. In this paper we present a dependence-graph based approach to computing executable slice for concurrent logic programs. The dependence-based representation used in this paper is called the Argument Dependence Net which can be used to explicitly represent various types of program dependences in a concurrent logic program. Based on the ADN, we can compute static executable slices for concurrent logic programs at argument level.
منابع مشابه
The tccp Interpreter
The Timed Concurrent Constraint Language (tccp in short) is a constraint-based concurrent language inspired in process algebra. The language is well-suited for the specification of concurrent and reactive systems. tccp is parametric w.r.t. a constraint system, what is a main characteristic of the Concurrent Constraint Paradigm of Saraswat. Maude is an executable rewriting logic language special...
متن کاملLocalizing and Explaining Reasons for Non-terminating Logic Programs with Failure-Slices
We present a slicing approach for analyzing logic programs with respect to non-termination. The notion of a failure-slice is presented which is an executable reduced fragment of the program. Each failureslice represents a necessary termination condition for the program. If a failure-slice does not terminate it can be used as an explanation for the non-termination of the whole program. To effect...
متن کاملSlicing Concurrent Logic Programs
Program slicing has been widely studied for imperative programs, but for logic programs it is just starting. In this paper we address the problem of slicing concurrent logic programs. To solve this problem, we propose three types of primary program dependences between arguments in concurrent logic programs, named the sharing dependence, communication dependence and uni cation dependence. We als...
متن کاملTimed Default Concurrent Constraint Programming
Synchronous programming (Berry (1989)) is a powerful approach to programming reactive systems. Following the idea that “processes are relations extended over time” (Abramsky (1993)), we propose a simple but powerful model for timed, determinate computation, extending the closure-operator model for untimed concurrent constraint programming (CCP). In (Saraswat et al. 1994a) we had proposed a mode...
متن کاملTowards a Semantics for Concurrent METATEM
Concurrent METATEM is a programming language based on the notion of concurrent, communicating objects, where each object directly executes a specification given in temporal logic, and communicates with other objects using asynchronous broadcast message-passing. Thus, Concurrent METATEM represents a combination of the direct execution of temporal specifications, together with a novel model of co...
متن کامل