Technical Report Number
I/O abstraction is offered as a new high-level approach to interprocess communication. Functional components of a concurrent system are written as encapsulated modules that act upon local data structures, some of which may be published for external use. Relationships among modules are specified by logical connections among their published data structures. Whenever a module updates published data, I/O takes place implicitly according to the configuration of logical connections. The Programmer's Playground, a software library and run-time system supporting I/O abstraction, is described. Design goals include high-level communication among programs written in multiple programming languages and the uniform treatment of discrete and continuous data types. Support for the development of distributed multimedia applications is the motivation for the work.
Goldman, Kenneth J.; Anderson, Michael D.; and Swaminathan, Bala, "The Programmers' Playground: I/O Abstraction for Heterogeneous Distributed Systems" Report Number: WUCS-93-29 (1993). All Computer Science and Engineering Research.