Results 1  10
of
12
Dactl: An Experimental Graph Rewriting Language
 Proc. 4th International Workshop on Graph Grammars
, 1991
"... This paper gives some examples of how computation in a number of languages may be described as graph rewriting, giving the Dactl notation for the examples shown. It goes on to present the Dactl model more formally before giving a formal definition of the syntax and semantics of the language. 2 Examp ..."
Abstract

Cited by 34 (7 self)
 Add to MetaCart
This paper gives some examples of how computation in a number of languages may be described as graph rewriting, giving the Dactl notation for the examples shown. It goes on to present the Dactl model more formally before giving a formal definition of the syntax and semantics of the language. 2 Examples of Computation by Graph Rewriting
A Translation of the PiCalculus into MONSTR
 J.UCS
, 1995
"... A translation of the πcalculus into the MONSTR graph rewriting language is described and proved correct. The translation illustrates the heavy cost in practice of faithfully implementing the communication primitive of the πcalculus and similar process calculi. It also illustrates the convenience ..."
Abstract

Cited by 8 (8 self)
 Add to MetaCart
A translation of the πcalculus into the MONSTR graph rewriting language is described and proved correct. The translation illustrates the heavy cost in practice of faithfully implementing the communication primitive of the πcalculus and similar process calculi. It also illustrates the convenience of representing an evolving network of communicating agents directly within a graph manipulation formalism, both because the necessity to use delicate notions of bound variables and of scopes is avoided, and also because the standard model of graphs in set theory automatically yields a useful semantics for the process calculus. The correctness proof illustrates many features typically encountered in reasoning about graph rewriting systems, and particularly how serialisation techniques can be used to reorder an arbitrary execution into one having stated desirable properties.
Fundamental issues and the design of MONSTR
 Journal of Universal Computer Science
, 1996
"... Abstract: This is the first in a series of papers dealing with the implementation of an extended term graph rewriting model of computation (described by the DACTL language) on a distributed store architecture. In this paper we set out the high level model, and under some simple packet store model is ..."
Abstract

Cited by 6 (5 self)
 Add to MetaCart
Abstract: This is the first in a series of papers dealing with the implementation of an extended term graph rewriting model of computation (described by the DACTL language) on a distributed store architecture. In this paper we set out the high level model, and under some simple packet store model is compared to a more realistic and finegrained packet store model, more closely related to the properties of a genuine distributed store architecture, and the differences are used to inspire the definition of the MONSTR sublanguage of DACTL, intended for direct execution on the machine. Various alternative operational semantics for MONSTR are proposed to reflect more closely the finegrained packet store model, and the prospects for establishing correctness are discussed. The detailed treatment of the alternative models, in the context of suitable sublanguages of MONSTR where appropriate, are subjects for subsequent papers.
Simple Type Inference For Term Graph Rewriting Systems
, 1992
"... A methodology for polymorphic type inference for general term graph rewriting systems is presented. This requires modified notions of type and of type inference due to the absence of structural induction over graphs. Induction over terms is replaced by dataflow analysis. 1 Introduction Term graphs ..."
Abstract

Cited by 5 (1 self)
 Add to MetaCart
A methodology for polymorphic type inference for general term graph rewriting systems is presented. This requires modified notions of type and of type inference due to the absence of structural induction over graphs. Induction over terms is replaced by dataflow analysis. 1 Introduction Term graphs are objects that locally look like terms, but globally have a general directed graph structure. Since their introduction in Barendregt et al. (1987), they have served the purpose of defining a rigorous framework for graph reduction implementations of functional languages (PeytonJones (1987)). This was the original intention. However the rewriting of term graphs defined in the operational semantics of the model, makes term graph rewriting systems (TGRSs) interesting models of computation in their own right. One can thus study all sorts of issues in the specific TGRS context. Typically one might be interested in how close TGRSs are to TRSs and this problem is examined in Barendregt et al. (19...
A Study of Two Graph Rewriting Formalisms: Interaction Nets and MONSTR
 Journal of Programming Languages
, 1997
"... Two superficially similar graph rewriting formalisms, Interaction Nets and MONSTR, are studied. Interaction Nets come from multiplicative Linear Logic and feature undirected graph edges, while MONSTR arose from the desire to implement generalized term graph rewriting efficiently on a distributed arc ..."
Abstract

Cited by 3 (3 self)
 Add to MetaCart
Two superficially similar graph rewriting formalisms, Interaction Nets and MONSTR, are studied. Interaction Nets come from multiplicative Linear Logic and feature undirected graph edges, while MONSTR arose from the desire to implement generalized term graph rewriting efficiently on a distributed architecture and utilizes directed graph arcs. Both formalisms feature rules with small lefthand sides consisting of two main graph nodes. A translation of Interaction Nets into MONSTR is described for both typed and untyped nets, while the impossibility of the opposite translation rests on the fact that net rewriting is always Church–Rosser while MONSTR rewriting is not. Some extensions to the net formalism suggested by the relationship with MONSTR are discussed, as well as some related implementation issues.
Implementing Concurrent Logic and Functional Languages in Dactl
 Journal of Programming Languages
, 1997
"... this paper we try to bridge the gap between the two formalisms by showing how concurrent logic languages can be implemented using graph rewriting. In particular, we develop techniques for mapping a wide class of CLLs including Parlog, GHC, Strand, Janus and a restricted subset of the Concurrent Prol ..."
Abstract

Cited by 1 (1 self)
 Add to MetaCart
this paper we try to bridge the gap between the two formalisms by showing how concurrent logic languages can be implemented using graph rewriting. In particular, we develop techniques for mapping a wide class of CLLs including Parlog, GHC, Strand, Janus and a restricted subset of the Concurrent Prolog family onto Dactl, a compiler target language based on graph rewriting. We discuss the problems found in the process and the adopted solutions. The paper contributes to related research by: # examining the potential of graph reduction as a suitable model for implementing CLLs in terms of expressiveness and efficiency
Expressing Runtime Structure and Synchronisation in Concurrent ObjectOriented Languages with MONSTR
 PROC. IFIP FMOODS96, 16PP
, 1996
"... The extended term graph rewriting formalism of MONSTR is described, together with some of its more important rigorously established properties, particularly regarding serialisability and acyclicity. This basis is used for giving a convenient description of the global runtime structure of a concurren ..."
Abstract

Cited by 1 (1 self)
 Add to MetaCart
The extended term graph rewriting formalism of MONSTR is described, together with some of its more important rigorously established properties, particularly regarding serialisability and acyclicity. This basis is used for giving a convenient description of the global runtime structure of a concurrent object oriented language. The formalism proves especially convenient for describing very precisely a variety of intended synchronisation properties of objects in a concurrent OOL, and this flexibility is illustrated by considering a variety of possible operational semantics for a simple counter object. A lower bound object example illustrates that even more extreme synchronisation properties for objects may be contemplated without stretching the capabilities of the MONSTR formalism. The presentation is independent of any specific high level OOL.
Experience Using an Intermediate Compiler Target Language for Parallel Machines
"... The generalised computational model of Term Graph Rewriting Systems (TGRS) has been used extensively as an implementation vehicle for a number of, often divergent, programming paradigms ranging from the traditional functional programming ones to the (concurrent) logic programming ones and various am ..."
Abstract
 Add to MetaCart
The generalised computational model of Term Graph Rewriting Systems (TGRS) has been used extensively as an implementation vehicle for a number of, often divergent, programming paradigms ranging from the traditional functional programming ones to the (concurrent) logic programming ones and various amalgamations of them, to (concurrent) objectoriented ones. More recently, the relationship between TGRS and process calculi (such as the pcalculus) as well as Linear Logic has also been explored. In this paper we describe our experience in using the intermediate Compiler Target Language Dactl based on TGRS for mapping a variety of programming paradigms of the aforementioned types onto it. In particular, we concentrate on some of the issues that we feel have played an important role in our work (in, say, affecting performance, etc.), the aim being to derive a list of features that we feel every language model which intends to be used as an intermediate representation between (concurrent) hig...
Implementing Interaction Nets In Monstr
"... Two superficially similar graph rewriting formalisms, Interaction Nets and MONSTR, are studied. Interaction Nets come from multiplicative Linear Logic and feature undirected graph edges, while MONSTR arose from the desire to implement generalised Term Graph Rewriting efficiently on a distributed arc ..."
Abstract
 Add to MetaCart
Two superficially similar graph rewriting formalisms, Interaction Nets and MONSTR, are studied. Interaction Nets come from multiplicative Linear Logic and feature undirected graph edges, while MONSTR arose from the desire to implement generalised Term Graph Rewriting efficiently on a distributed architecture and utilises directed graph arcs. Both formalisms feature rules with small left hand sides consisting of two main graph nodes. A translation of Interaction Nets into MONSTR is described, thus providing an implementation route for the former based on the latter and particularly suited to distributed implementations. Keywords: Term Graph Rewriting Systems; MONSTR; Interaction Nets; Distributed Systems. INTRODUCTION There are many different kinds of graph that have been studied over the years, and inevitably, people have invented a rather large number of ways of rewriting them, yielding a vast number of different models of computation. In this paper we study the relationship between t...
A Translation of the PiCalculus Into MONSTR R. Banach
"... Abstract: A translation of the πcalculus into the MONSTR graph rewriting language is described and proved correct. The translation illustrates the heavy cost in practice of faithfully implementing the communication primitive of the πcalculus and similar process calculi. It also illustrates the con ..."
Abstract
 Add to MetaCart
Abstract: A translation of the πcalculus into the MONSTR graph rewriting language is described and proved correct. The translation illustrates the heavy cost in practice of faithfully implementing the communication primitive of the πcalculus and similar process calculi. It also illustrates the convenience of representing an evolving network of communicating agents directly within a graph manipulation formalism, both because the necessity to use delicate notions of bound variables and of scopes is avoided, and also because the standard model of graphs in set theory automatically yields a useful semantics for the process calculus. The correctness proof illustrates many features typically encountered in reasoning about graph rewriting systems, and particularly how serialisation techniques can be used to reorder an arbitrary execution into one having stated desirable properties.