World Scientific
  • Search
Skip main navigation

Cookies Notification

We use cookies on this site to enhance your user experience. By continuing to browse the site, you consent to the use of our cookies. Learn More
×
Our website is made possible by displaying certain online content using javascript.
In order to view the full content, please disable your ad blocker or whitelist our website www.worldscientific.com.

System Upgrade on Tue, Oct 25th, 2022 at 2am (EDT)

Existing users will be able to log into the site and access content. However, E-commerce and registration of new users may not be available for up to 12 hours.
For online purchase, please visit us again. Contact us at [email protected] for any enquiries.

A GENTLE INTRODUCTION TO S-NET: TYPED STREAM PROCESSING AND DECLARATIVE COORDINATION OF ASYNCHRONOUS COMPONENTS

    We present the design of S-NET, a coordination language and component technology based on stream processing. S-NET achieves a near-complete separation between application code, written in a conventional programming language, and coordination code, written in S-NET itself. S-NET boxes integrate existing sequential code as stream-processing components into streaming networks, whose construction is based on algebraic formulae built out of four network combinators. Subtyping on the level of boxes and networks and a tailor-made inheritance mechanism achieve flexible software reuse.

    References

    • H. Sutter, Dr. Dobb's Journal 30, (2005). Google Scholar
    • Grelck, C, Shafarenko, A.: Report on S-Net: A Typed Stream Processing Language, Part I: Foundations, Record Types and Networks. Technical report, University of Hertfordshire, Department of Computer Science, Compiler Technology and Computer Architecture Group, Hatfield, England, United Kingdom (2006) . Google Scholar
    • C. Grelck and S. B. Scholz, International Journal of Parallel Programming 34, 383 (2006), DOI: 10.1007/s10766-006-0018-x. Crossref, ISIGoogle Scholar
    • H.   Cai et al. , Extending the S-Net Type System , Proceedings of the Æther-Morpheus Workshop From Reconfigurable to Self- Adaptive Computing (AMWAS'07) ( 2007 ) . Google Scholar
    • C.   Grelck , S. B.   Scholz and A.   Shafarenko , Coordinating Data Parallel SAC Programs with S-Net , Proceedings of the 21st IEEE International Parallel and Distributed Processing Symposium (IPDPS'07) ( IEEE Computer Society Press , Los Alamitos, California, USA , 2007 ) . Google Scholar
    • R. Stephens, Acta Informatica 34, 491 (1997), DOI: 10.1007/s002360050095. Crossref, ISIGoogle Scholar
    • G. Kahn, The semantics of a simple language for parallel programming, Information Processing 74, Proc. IFIP Congress 74, ed. L. Rosenfeld (North-Holland, 1974) pp. 471–475. Google Scholar
    • E. A. Ashcroft and W. W. Wadge, Communications of the ACM 20, 519 (1977), DOI: 10.1145/359636.359715. Crossref, ISIGoogle Scholar
    • N. Halbwachset al., Proceedings of the IEEE 79, 1305 (1991), DOI: 10.1109/5.97300. Crossref, ISIGoogle Scholar
    • G. Berry and G. Gonthier, Science of Computer Programming 19, 87 (1992), DOI: 10.1016/0167-6423(92)90005-V. Crossref, ISIGoogle Scholar
    • J. Binder, Aerospace America 26 (2004). Google Scholar
    • P. Caspi and M. Pouzet, Synchronous Kahn networks, ICFP '96: Proceedings of the first ACM SIGPLAN international conference on Functional programming, ed. R. L. Wexelblat (1996) pp. 226–238. Google Scholar
    • P. Caspi and M. Pouzet, A co-iterative characterization of synchronous stream functions, CMCS'98, First Workshop on Coalgebraic Methods in Computer Science Lisbon, eds. Bart Jacobs, Larry Moss, H. R. Rutten and J.  (1998) pp. 1–21. Google Scholar
    • K. Hammond and G. Michaelson, Domain-Specific Program Generation: International Seminar 3016 (Dagstuhl Castle, Germany, 2003) pp. 127–147. Google Scholar
    • Michael I. Gordon et al. , A stream compiler for communication-exposed architectures , Proceedings of the Tenth International Conference on Architectural Support for Programming Languages and Operating Systems ( 2002 ) . Google Scholar
    • G. A.   Papadopoulos and F.   Arbab , Advances in Computers   46 ( Academic Press , 1998 ) . Google Scholar
    • G. Florijn, T. Bessamusca and D. Greefhorst, Ariadne and HOPLa: flexible coordination of collaborative processes, First International Conference on Coordination Models, Languages and Applications (Coordination'96), LNCS, eds. P. Ciancarini and C. Hankin (1996) pp. 197–214. Google Scholar
    • J. T. Feo, D. C. Cann and R. R. Oldehoeft, J. Parallel Distrib. Comput. 10, 349 (1990), DOI: 10.1016/0743-7315(90)90035-N. Crossref, ISIGoogle Scholar
    • R. Loogen, Y. Ortega-Mallén and R. Peña-Marí, Journal of Functional Programming 15, 431 (2005), DOI: 10.1017/S0956796805005526. Crossref, ISIGoogle Scholar
    • F. Arbab, Structures in Comp. Sci. 14, 329 (2004), DOI: 10.1017/S0960129504004153. Crossref, ISIGoogle Scholar
    • G. Stefanescu, An algebraic theory of flowchart schemes, Proceedings 11th Colloquium on Trees in Algebra and Programming, LNCS, ed. P. Franchi-Zannettacci (Springer-Verlag, 1986) pp. 60–73. Google Scholar
    • M. Broy and G. Stefanescu, Theoretical Computer Science 99 (2001), DOI: 10.1016/S0304-3975(99)00322-9. Google Scholar
    • Grelck, C, Penczek, F.: Implementing S-Net: A Typed Stream Processing Language, Part I: Compilation, Code Generation and Deployment. Technical report, University of Hertfordshire, Department of Computer Science, Compiler Technology and Computer Architecture Group, Hatfield, England, United Kingdom (2007) . Google Scholar
    • Penczek, F.: Design and Implementation of a Multithreaded Runtime System for the Stream Processing Language S-Net. Master's thesis, Institute of Software Technology and Programming Languages, University of Liibeck, Germany (2007) . Google Scholar
    • T. Bernardet al., A Microthreaded Architecture and its Compiler, Proceedings of the 19th International Conference on Architecture of Computing Systems (ARCS'06), eds. M. Arenezet al. (Frankfurt/Main, 2006) pp. 326–342. Google Scholar