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 reso...
AbstractObject orientation and component-based development have both proven useful for the elaborati...
In this paper we consider the problem of fault handling inside an object-oriented language with asyn...
AbstractA future is a well-known programming construct used to introduce concurrency into sequential...
AbstractThis paper formalizes the observable interface behavior of a concurrent, object-oriented lan...
textabstractThis paper formalizes the observable interface behavior of a concurrent, object-oriented...
This paper formalizes the observable interface behavior of a concurrent, object-oriented language wi...
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...
Concurrency plays an important role in programming language design. Logic variables in the form of f...
This paper formalizes the observable interface behavior of open systems for a strongly-typed, concur...
A future is a well-known programming construct used to introduce concurrency to sequential programs....
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...
AbstractIn thread-based object-oriented languages, synchronous method calls usually provide the mech...
International audienceIn many actor-based programming models, asynchronous method calls communicate ...
AbstractObject orientation and component-based development have both proven useful for the elaborati...
In this paper we consider the problem of fault handling inside an object-oriented language with asyn...
AbstractA future is a well-known programming construct used to introduce concurrency into sequential...
AbstractThis paper formalizes the observable interface behavior of a concurrent, object-oriented lan...
textabstractThis paper formalizes the observable interface behavior of a concurrent, object-oriented...
This paper formalizes the observable interface behavior of a concurrent, object-oriented language wi...
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...
Concurrency plays an important role in programming language design. Logic variables in the form of f...
This paper formalizes the observable interface behavior of open systems for a strongly-typed, concur...
A future is a well-known programming construct used to introduce concurrency to sequential programs....
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...
AbstractIn thread-based object-oriented languages, synchronous method calls usually provide the mech...
International audienceIn many actor-based programming models, asynchronous method calls communicate ...
AbstractObject orientation and component-based development have both proven useful for the elaborati...
In this paper we consider the problem of fault handling inside an object-oriented language with asyn...
AbstractA future is a well-known programming construct used to introduce concurrency into sequential...