Article,

A Static Semantics for Alloy and its Impact in Refactorings

, , and .
Electron. Notes Theor. Comput. Sci., (2007)
DOI: 10.1016/j.entcs.2007.03.023

Abstract

Refactorings are usually proposed in an ad hoc way because it is difficult to prove that they are sound with respect to a formal semantics, not guaranteeing the absence of type errors or semantic changes. Consequently, developers using refactoring tools must rely on compilation and tests to ensure type-correctness and semantics preservation, respectively, which may not be satisfactory to critical software development. In this paper, we formalize a static semantics for Alloy, which is a formal object-oriented modeling language, and encode it in Prototype Verification System (PVS). The static semantics^a€™ formalization can be useful for specifying and proving that transformations in general (not only refactorings) do not introduce type errors, for instance, as we show here.

Tags

Users

  • @leonardo

Comments and Reviews