Hostname: page-component-6766d58669-nqrmd Total loading time: 0 Render date: 2026-05-24T06:47:28.040Z Has data issue: false hasContentIssue false

iRho: an imperative rewriting calculus

Published online by Cambridge University Press:  01 June 2008

LUIGI LIQUORI
Affiliation:
INRIA Sophia Antipolis, 2004 Route des Lucioles, FR-06902France Email: Luigi.Liquori@inria.fr; Bernard.Serpette@inria.fr
BERNARD PAUL SERPETTE
Affiliation:
INRIA Sophia Antipolis, 2004 Route des Lucioles, FR-06902France Email: Luigi.Liquori@inria.fr; Bernard.Serpette@inria.fr

Abstract

We propose an imperative version of the Rewriting Calculus, a calculus based on pattern matching, pattern abstraction and side effects, which we call iRho.

We formulate both a static and big-step call-by-value operational semantics of iRho. The operational semantics is deterministic, and immediately suggests how an interpreter for the calculus may be built. The static semantics is given using a first-order type system based on a form of product types, which can be assigned to term-like structures (that is, records).

The calculus is à la Church, that is, pattern abstractions are decorated with the types of the free variables of the pattern.

iRho is a good candidate for the core of a pattern-matching imperative language, where a (monomorphic) typed store can be safely manipulated and where fixed points are built into the language itself.

Properties such as determinism of the interpreter and subject-reduction have been completely checked using a machine-assisted approach with the Coq proof assistant. Progress and decidability of type checking are proved using pen and paper.

Information

Type
Paper
Copyright
Copyright © Cambridge University Press 2008

Access options

Get access to the full version of this content by using one of the access options below. (Log in options will check for institutional or personal access. Content may require purchase if you do not have access.)

Article purchase

Temporarily unavailable