Skip to main content

Towards a uniform topological treatment of streams and functions on streams

  • Conference paper
  • First Online:
Automata, Languages and Programming (ICALP 1985)

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 194))

Included in the following conference series:

Abstract

We study the semantics of functional languages on streams such as Turner's SASL or KRC. The basis of these languages is recursive equations for (functions on) finite or infinite sequences. The paper presents a start towards a mathematical (denotational) description of such languages using tools from metric topology. The description is based on the Banach fixed point theorem and a restricted version of a typed lambda calculus. To a system of recursive stream (function) declarations a system of functions is associated in an appropriate topological domain. These functions have to be contracting in certain arguments and non distance increasing in others; a syntax is designed which ensures the right interplay between these conditions. Nondeterminism is handled by considering compact sets of streams, and preservation of compactness is another important technical issue. Not all concepts in a language such as KRC are covered, and some indications on possible extensions of the framework are provided.

Supported in part by ESPRIT project 415: Parallel Architectures and Languages

Supported by the Netherlands Organisation for the Advancement of Pure Research (Z.W.O.), grant 125-20-04.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

7. References

  1. ARNOLD, A., NIVAT, M., The metric space of infinite trees, algebraic and topological properties, Fund. Inform. III, 4, pp 445–476, 1980.

    Google Scholar 

  2. DE BAKKER, J.W., Mathematical theory of program correctness, Prentice Hall International, 1980.

    Google Scholar 

  3. DE BAKKER, J.W., KLOP, J.W., MEYER, J.-J.CH., Correctness of programs with function procedures in Logic of Programs, LNCS 131, proceedings 1981, Kozen, D., Springer, 1982.

    Google Scholar 

  4. DE BAKKER, J.W., ZUCKER, J.I., Compactness in semantics for merge and fair merge in Logic of Programs, LNCS 164, proceedings 1983, Kozen, D., Clarke, E., Springer, 1983.

    Google Scholar 

  5. de BAKKER, J.W., ZUCKER, J.I., Processes and the denotational semantics of concurrency, Information and Control, 54, pp 70–120, 1982.

    Article  Google Scholar 

  6. BROY, M., Fixed point theory for communication and concurrency, in Bjorner, Ed., IFIP TC 2 Working conference on Formal description of Programming Concepts II, Garmisch, June 1982, pp 125–147, North Holland, Amsterdam, 1983.

    Google Scholar 

  7. BROY, M., BAUER, L., A systematic approach to language constructs for concurrent programs, in Science of Computer Programming 4, pp 103–139, North Holland, 1984.

    Article  Google Scholar 

  8. BURGE, W.H., Stream processing functions, in IBM journal of research and development, 19, pp 12–25, 1975.

    Google Scholar 

  9. DARLINGTON J., HENDERSON, P., TURNER, D.A. (eds), Functional programming and its applications, Cambridge University Press, Cambridge, 1982.

    Google Scholar 

  10. DENNIS, J.B., WENG, K.K.-S., An abstract implementation for concurrent computation with streams, in Proc. 1979 int. conf. on parallel processing, pp 35–45, 1979.

    Google Scholar 

  11. DUGUNDJI, J., Topology, Allyn and Bacon, Inc., Boston, 1966.

    Google Scholar 

  12. IDA, T., TANAKA, J., Functional programming with streams, in Information Processing, pp 265–270, North-Holland, 1983.

    Google Scholar 

  13. MEERTENS, L.G.L.T., Procedurele datastructuren (in Dutch), in Colloquium Capita Datastructuren (J.C. VAN VLIET (Red)), pp 171–186, MC syllabus 37, Amsterdam, 1978.

    Google Scholar 

  14. MICHAEL, E., Topologies on spaces of subsets, in Trans. AMS 71, pp 152–182, 1951.

    Google Scholar 

  15. NAKATA, I, Programming with streams, in IBM-research report, RJ 3751 (43317), 1983.

    Google Scholar 

  16. NIVAT, M., Infinite words, infinite trees, infinite computations, in Foundations of computer science III.2 (de Bakker, J.W., van Leeuwen, J. (eds)), 3–52, Mathematical centre tracts 109, 1979.

    Google Scholar 

  17. ROUNDS, W.C., GOLSON, W.G., Connections between two theories of concurrency: Metric spaces and synchronization trees, Information and control 57, pp 102–124, 1983.

    Article  Google Scholar 

  18. SMYTH, M.B., Powerdomains and predicate transformers: a topological view, Proc. 10th ICALP, Barcelona, Spain, Diaz, J. (ed), LNCS 154, pp 662–676, 1983.

    Google Scholar 

  19. TISON, S., DAUCHET, M., COMYN, G., Metrical and ordered properties of powerdomains, Proc. FCT conference, Borgholm, Sweden, Karpinski, M. (ed), LNCS 158, pp 465–474, 1983.

    Google Scholar 

  20. TURNER, D.A., Recursion equations as a programming language, in Darlington, J., Henderson, P., Turner, D.A. (eds), Functional programming and its applications, Cambridge University Press, Cambridge, pp 1–28, 1982.

    Google Scholar 

  21. TURNER, D.A., A new implementation technique for applicative languages, in Software-Practice and experience, 9, pp 31–49, 1979.

    Google Scholar 

  22. WADGE, W.W., An extensional treatment of dataflow deadlock, in Theoretical Computer Science 13 (1981), pp 3–15, 1981.

    Article  Google Scholar 

  23. WADLER, P., Applicative style programming, program transformation and list operators, in Proc. functional programming languages and computer architecture, pp 25–32, 1981.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Wilfried Brauer

Rights and permissions

Reprints and permissions

Copyright information

© 1985 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

de Bakker, J.W., Kok, J.N. (1985). Towards a uniform topological treatment of streams and functions on streams. In: Brauer, W. (eds) Automata, Languages and Programming. ICALP 1985. Lecture Notes in Computer Science, vol 194. Springer, Berlin, Heidelberg. https://doi.org/10.1007/BFb0015739

Download citation

  • DOI: https://doi.org/10.1007/BFb0015739

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-15650-5

  • Online ISBN: 978-3-540-39557-7

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics