Abstract | ||
---|---|---|
Applications that process continuous information flows are challenging to write because the application programmer must deal with flow-specific concurrency and timing requirements, necessitating the explicit management of threads, synchronization, scheduling and timing. We believe that middleware can ease this burden, but many middleware platforms do not match the structure of these applications, because they focus on control-flow centric interaction models such as remote method invocation. Indeed, they abstract away from the very things that the informatian-flow centric programmer must control.This paper describes Infopipes--a new high-level abstraction for information flow applications--and a middleware framework that supports them. Infopipes handle the complexities associated with control flow and multi-threading, relieving the programmer of these tasks. Starting from a high-level description of an information flow pipeline, the framework determines which parts of a pipeline require separate threads or coroutines, and handles synchronization transparently to the application programmer. The framework also gives the programmer the freedom to write or reuse components in a passive style, even through the configuration will actually require the use of a thread or coroutine. Conversely, it is possible to write a component using a thread and know that the thread will be eliminated if it is not needed in a pipeline. This allows the most appropriate programming model to be chosen for a given task, and existing code to be reused irrespective of its activity model. |
Year | DOI | Venue |
---|---|---|
2003 | 10.1002/spe.510 | Software - Practice and Experience |
Keywords | Field | DocType |
control flow,application programmer,middleware framework,activity model,separate thread,information flow pipeline,thread transparency,information flow application,information flow middleware,middleware platform,continuous information flow,informatian-flow centric programmer,middleware,information flow,programming model | Middleware,Coroutine,Information flow (information theory),Programmer,Programming language,Programming paradigm,Computer science,Concurrency,Control flow,Thread (computing),Distributed computing | Journal |
Volume | Issue | ISSN |
33 | 4 | 0038-0644 |
ISBN | Citations | PageRank |
3-540-42800-3 | 11 | 0.80 |
References | Authors | |
29 | 5 |
Name | Order | Citations | PageRank |
---|---|---|---|
Rainer Koster | 1 | 94 | 7.16 |
Andrew P. Black | 2 | 1566 | 366.84 |
Jie Huang | 3 | 97 | 7.74 |
Jonathan Walpole | 4 | 1122 | 137.35 |
Calton Pu | 5 | 5377 | 877.83 |