This paper formalizes the observable interface behavior of a concurrent, object-oriented language with futures and promises. The calculus captures the core of Creol, a language, featuring in particular asynchronous method calls and, since recently, first-class futures. The focus of the paper are open systems and we formally characterize their behavior in terms of interactions at the interface between the program and its environment. The behavior is given by transitions between typing judgments, where the absent environment is represented abstractly by an assumption context. A particular challenge is the safe treatment of promises: The erroneous situation that a promise is fulfilled twice, i.e., bound to code twice, is prevented by a resourc...
International audienceIn many actor-based programming models, asynchronous method calls communicate ...
Distributed and concurrent object-oriented systems are difficult to analyze due to the complexity of...
Services are autonomous, self-describing, technology-neutral software units that can be described, p...
This paper formalizes the observable interface behavior of a concurrent, object-oriented language wi...
AbstractThis paper formalizes the observable interface behavior of a concurrent, object-oriented lan...
This paper formalizes the observable interface behavior of a concurrent, object-oriented language wi...
We present the semantics and proof system for an object-oriented language with active objects, async...
This paper formalizes the observable interface behavior of open systems for a strongly-typed, concur...
Concurrency plays an important role in programming language design. Logic variables in the form of f...
A future is a well-known programming construct used to introduce concurrency to sequential programs....
AbstractObject orientation and component-based development have both proven useful for the elaborati...
AbstractIn thread-based object-oriented languages, synchronous method calls usually provide the mech...
Distributed and concurrent object-oriented systems are difficult to analyze due to the complexity of...
Distributed and concurrent object-oriented systems are difficult to analyze due to the complexity of...
In this paper we consider the problem of fault handling inside an object-oriented language with asyn...
International audienceIn many actor-based programming models, asynchronous method calls communicate ...
Distributed and concurrent object-oriented systems are difficult to analyze due to the complexity of...
Services are autonomous, self-describing, technology-neutral software units that can be described, p...
This paper formalizes the observable interface behavior of a concurrent, object-oriented language wi...
AbstractThis paper formalizes the observable interface behavior of a concurrent, object-oriented lan...
This paper formalizes the observable interface behavior of a concurrent, object-oriented language wi...
We present the semantics and proof system for an object-oriented language with active objects, async...
This paper formalizes the observable interface behavior of open systems for a strongly-typed, concur...
Concurrency plays an important role in programming language design. Logic variables in the form of f...
A future is a well-known programming construct used to introduce concurrency to sequential programs....
AbstractObject orientation and component-based development have both proven useful for the elaborati...
AbstractIn thread-based object-oriented languages, synchronous method calls usually provide the mech...
Distributed and concurrent object-oriented systems are difficult to analyze due to the complexity of...
Distributed and concurrent object-oriented systems are difficult to analyze due to the complexity of...
In this paper we consider the problem of fault handling inside an object-oriented language with asyn...
International audienceIn many actor-based programming models, asynchronous method calls communicate ...
Distributed and concurrent object-oriented systems are difficult to analyze due to the complexity of...
Services are autonomous, self-describing, technology-neutral software units that can be described, p...