We address how to write programs for distributed computing systems in which the network topology can change dynamically. Examples of such systems, which we call ensembles, include ...
Michael P. Ashley-Rollman, Peter Lee, Seth Copen G...
It is difficult to design and test location-enhanced applications. A large part of this difficulty is due to the added complexity of supporting location. Wizard of Oz (WOz) has be...
We describe an approach for pipelining nested data collections in scientific workflows. Our approach logically delimits arbitrarily nested collections of data tokens using special...
Software libraries rely increasingly on iterators to provide generic traversal of data structures. These iterators can be represented either as objects that maintain state or as p...
Design patterns are reusable abstractions in object-oriented software. However, using current mainstream programming languages, these elements can only be expressed extra-linguist...