[Jot-newsletter] [JOT] JOT Subscriber Newsletter Volume 12, no. 3 (August 2013)

vitekj vitekj at icloud.com
Wed Aug 14 11:34:03 CEST 2013


For Volume 12, no. 3 (August 2013)

I. Letter from the JOT Editor

Dear Readers,

Welcome to the latest issue of JOT dedicated to the last TOOLS Europe.

Jan Vitek
Editor-in-Chief, Journal of Object Technology
editor at jot.fm -- http://www.jot.fm

II. Content


TOOLS Europe 2012 Special Section.
By Carlo Furia, Sebastian Nanz



Incremental Dynamic Updates with First-class Contexts.
By Erwann Wernli, Mircea Lungu, Oscar Nierstrasz

Highly available software systems occasionally need to be up- dated while avoiding downtime. Dynamic software updates reduce down-time, but still require the system to reach a quiescent state in which a global update can be performed. This can be difficult for multi-threaded systems. We present a novel approach to dynamic updates using first-class contexts, called Theseus. First-class contexts make global updates unnecessary: existing threads run to termination in an old context, while new threads start in a new, updated context; consistency between contexts is ensured with the help of bidirectional transformations. We show that for multi-threaded systems with coherent memory, first-class contexts offer a practical and flexible approach to dynamic updates, with acceptable overhead.


An Integrated Approach to Source Level Debugging and Compile Error Reporting in Metaprograms.
By Yannis Lilis, Anthony Savidis

Metaprogramming is an advanced language feature enabling to mix programs with definitions that may be executed either at compile-time or at runtime to generate source code to be put in their place. Such definitions are called metaprograms and their actual evaluation constitutes a compilation stage. As metaprograms are also programs, programmers should be supported in handling compile-time and runtime errors, something introducing challenges to the entire tool chain along two lines. Firstly, the source point of a compile error may well be the outcome of a series of compilation stages, thus never appearing within the original program. Effectively, the latter requires a compiler to track down the error chain across all involved stages so as to provide a meaningful, descriptive and precise error report. Secondly, every compilation stage is instantiated by the execution of the respective staged program. Thus, typical full-fledged source-level debugging for any particular stage should be facilitated during the compilation process. Existing implementations suffer in both terms, overall providing poor error messages, while lacking the required support for debugging metaprograms of any staging depth. In this paper, we outline the implementation of a compile-time metaprogramming system offering all aforementioned facilities. Then, we detail the required amendments to the compilation process and the necessary interaction between the compiler and the tool-chain (IDE). Finally, we discuss how similar functionality could be achieved in systems offering runtime metaprogramming.


III. About JOT

The Journal of Object Technology (JOT) is a peer-reviewed, open-access journal dedicated to the timely publication of previously unpublished research articles, surveys, tutorials, and technical notes on all aspects of object technology.

JOT is available online at http://www.jot.fm and is free to both readers and authors, with no registration required.

The JOT newsletter is sent with the publication of selected JOT issues and is available by subscription to the JOT reader and author community. The subscription form may be found on the JOT Web site. Subscribing requires no personal information or fee, only your email address. We use such addresses for the sole purpose of distributing the JOT newsletter and do not communicate them to third parties.
You are receiving this newsletter because you have subscribed to
	jot-newsletter at jot.fm
To unsubscribe, please use the mailman interface:

More information about the jot-newsletter mailing list