A Rewriting Approach to the Design and Evolution of Object-Oriented Languages

From FSL
Jump to: navigation, search

This paper presents a summary of my ongoing thesis work on using rewriting logic for programming languages, and is part of our ongoing work on Rewriting Logic Semantics. This work was presented at ECOOP'07 in both the Doctoral Symposium and in the poster session, and was published in a technical report (Forschungsberichte) by the Technische Universität Berlin. A similar poster was also presented at OOPSLA'07.

A Rewriting Approach to the Design and Evolution of Object-Oriented Languages

Mark Hills and Grigore Rosu
Technical Report Bericht-Nr. 2007-7, pp. 23-26, July 2007
Abstract. Object-oriented language concepts have been highly successful, resulting in a large number of object-oriented languages and language extensions. Unfortunately, formal methods for defining and reasoning about these languages are still often performed after the fact, potentially resulting in ambiguous, overly complex, or poorly understood language features. We believe it is important to bring the use of formal techniques forward in this process, using them as an aid to language design and evolution. To this end, we propose a set of tools and techniques, making use of rewriting logic, to provide an interactive environment for the design and evolution of object-oriented languages, while also providing a solid mathematical foundation for language analysis and verification.
PDF, ECOOP'07 Doctoral Symposium slides, ECOOP'07 Doctoral Symposium, BIB


Mark Hills and Grigore Rosu
OOPSLA'07 Companion, ACM Press, pp 827-828. 2007
Abstract. Rewriting logic semantics provides an environment for defining new and existing languages. These language definitions are formal and executable, providing language interpreters almost for free while also providing a framework for building analysis tools, such as type checkers, model checkers, and abstract interpreters. Large subsets of several existing object-oriented languages have been defined, while a new research language, KOOL, has been created as a platform for experimenting with language features and type systems. At the same time, new tools and formalisms aimed specifically at programming languages are being developed.
PDF, OOPSLA'07 poster, ACM, OOPSLA'07, BIB

Personal tools
Namespaces

Variants
Actions
Navigation