3,531 research outputs found
An Implementation of Nested Pattern Matching in Interaction Nets
Reduction rules in interaction nets are constrained to pattern match exactly
one argument at a time. Consequently, a programmer has to introduce auxiliary
rules to perform more sophisticated matches. In this paper, we describe the
design and implementation of a system for interaction nets which allows nested
pattern matching on interaction rules. We achieve a system that provides
convenient ways to express interaction net programs without defining auxiliary
rules
Repotting the Geraniums: On Nested Graph Transformation Rules
We propose a scheme for rule amalgamation based on nested graph predicates. Essentially, we extend all the graphs in such a predicate with right hand sides. Whenever such an enriched nested predicate matches (i.e., is satisfied by) a given host graph, this results in many individual match morphisms, and thus many “small” rule applications. The total effect is described by the amalgamated rule. This makes for a smooth, uniform and very powerful amalgamation scheme, which we demonstrate on a number of examples. Among the examples is the following, which we believe to be inexpressible in very few other parallel rule formalism proposed in the literature: repot all flowering geraniums whose pots have cracked.\u
Realizing Impure Functions in Interaction Nets
We propose and illustrate first steps towards an extension of
interaction nets based on monads to handle functions with side effects
(e.g., I/O, exceptions). We define three monads for common types of side effects
and show their correctness by proving the monad laws
Web Services: A Process Algebra Approach
It is now well-admitted that formal methods are helpful for many issues
raised in the Web service area. In this paper we present a framework for the
design and verification of WSs using process algebras and their tools. We
define a two-way mapping between abstract specifications written using these
calculi and executable Web services written in BPEL4WS. Several choices are
available: design and correct errors in BPEL4WS, using process algebra
verification tools, or design and correct in process algebra and automatically
obtaining the corresponding BPEL4WS code. The approaches can be combined.
Process algebra are not useful only for temporal logic verification: we remark
the use of simulation/bisimulation both for verification and for the
hierarchical refinement design method. It is worth noting that our approach
allows the use of any process algebra depending on the needs of the user at
different levels (expressiveness, existence of reasoning tools, user
expertise)
On the Implementation of Dynamic Patterns
The evaluation mechanism of pattern matching with dynamic patterns is
modelled in the Pure Pattern Calculus by one single meta-rule. This
contribution presents a refinement which narrows the gap between the abstract
calculus and its implementation. A calculus is designed to allow reasoning on
matching algorithms. The new calculus is proved to be confluent, and to
simulate the original Pure Pattern Calculus. A family of new, matching-driven,
reduction strategies is proposed.Comment: In Proceedings HOR 2010, arXiv:1102.346
- …