Skip to main content
Log in

Stability, Sequentiality and Demand Driven Evaluation in Dataflow

  • Formal Aspects of Computing
  • Published:
Formal Aspects of Computing

Abstract

We show that a given dataflow language l has the property that for any program P and any demand for outputs D (which can be satisfied) there exists a least partial computation of P which satisfies D, iff all the operators of l are stable. This minimal computation is the demand-driven evaluation of P. We also argue that in order to actually implement this mode of evaluation, the operators of l should be further restricted to be effectively sequential ones.

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

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

References

  1. Arvind and Gostelow, K.P.: Some Relationships Between Asynchronous Interpreters of a Dataflow Language. Proceedings of the IFIP WG2.2 Conference on Formal Description of Programming Languages, St. Andrews, Canada, 1977.

    Google Scholar 

  2. Berry, G.: Bottom-up Computation of Recursive Programs. R.A.I.R.O. Informatique Theorique vol. 10 no. 3, pp. 47–82 mars 1976.

    Google Scholar 

  3. Berry, G.: Fr Sequentialité de Évaluation Formelle des λ-expressions. Proc. 3rd International Colloquium on Programming, Paris, March 28–30, 1978, DUNOD.

    Google Scholar 

  4. Berry, G.: Stable Models of typed lambda — calculi. Proc. 5th Coll. on Automata, Languages and Programming, July 1978, pp. 72–89.

    Google Scholar 

  5. Berry, G.: Fr Modèles complètement adéquateet Stable des λ-calculus typés. These de Doctorat d’État, Université Paris VII, 1979.

    Google Scholar 

  6. Broy, M. and Bauer, F.L.: A Systematic Approach to Language Constructs for Concurrent Programs. Science of Computer Programming 4, pp. 103–139, North-Holland Publishing Company, 1984.

    Article  MATH  MathSciNet  Google Scholar 

  7. Curien, P.: Categorical Combinators, Sequential Algorithms and Functional Programming. Ph.D Thesis, Univesite Paris 7, Paris, 1985.

    Google Scholar 

  8. Faustini, A.: The equivalence of an Operational and Denotational Semantics for Pure Dataflow. Ph.D Thesis, University of Warwick, 1982.

    Google Scholar 

  9. IEEE. Special issue on Dataflow Systems. IEEE Comput. 15, 2 Feb 1982.

  10. Jones, K.: A Formal Semantics for a Dataflow Machine — Using VDM. Lecture Notes in Computer Science 254, pp. 331–335, 1987 (reprinted in Shaw, R.C., Jones, C.B.: Case Studies in Systematic Software Development. Prentice-Hall, 1990).

    Google Scholar 

  11. Kahn, G.: The Semantics of a Simple Language for a Parallel Programming. Proceeding of the IPIF Congress 74, pp. 471–475, 1974.

    MathSciNet  Google Scholar 

  12. Kahn, G. and Plotkin, G.: Structures de données concrètes. Rapport IRIA — LABORIA 336 (D).

  13. Keller, R.M.: Denotational Models for Parallel Programs with Indeterminate Operators. Formal Descriptions of Programming Concepts, E.J. Neuhold (ed.), pp. 337–366, North Holland, 1978.

  14. Kosinski, P.R.: A Straightforward Denotational Semantics for Non-determinate Data Flow Programs. Conf. Record of the 5th Annual ACM Symposium on Principles of Programming Languages, pp. 214–221, 1978.

    Google Scholar 

  15. Linch, Nancy A. and Stark, E.W.: A Proof of the Kahn Principle for I/O Automata. Information and Computation 82, pp. 81–92, 1989.

    Google Scholar 

  16. Loeckx, Jacques and Sieber, Kurt.: The Foundations of Program Verification. Teubner, 1984.

    Google Scholar 

  17. Milne, R. and Strachey, C.: A Theory of Programming Language Semantics. Chapman and Hall, 1976.

    MATH  Google Scholar 

  18. Milner, R.: Fully Abstract Models of Typed α-calculi. Theoret. Comput. Sci., vol 4, no 1, pp. 1–23, Feb 1977.

    MATH  MathSciNet  Google Scholar 

  19. Oliveira, J.N.: The Formal Semantics of Deterministic Dataflow Programs. Ph.D. Thesis, Department of Computer Science, University of Manchester, February 1984.

    Google Scholar 

  20. Pingali, K. and Arvind: Efficient Demand-Driven Evaluation part 1. ACM Trans, on Prog. Lang, and Sys. vol 7, no 2, pp. 311–333, April 1985.

    MATH  Google Scholar 

  21. Pingali, K.: Demand Driven Evaluation on Dataflow Machines. Ph.D Thesis, 1986.

    Google Scholar 

  22. Richmond, G.: A Dataflow Implementation of SASL. M.SC. thesis, Department of Computer Science, University of Manchester, 1982.

    Google Scholar 

  23. Scott, D. and de Bakkar, J.W.: A Theory of Programs. IBM Seminar unpublished notes, 1969.

    Google Scholar 

  24. Scott, D.: Outlines of Mathematical Theory of Computation. 4th Annual Princeton Conf. Inform. Sc. and Sys. pp. 169–176, 1970.

    Google Scholar 

  25. Stoy, J.: Denotational Semantics: The Scott-Strachey Approach to Programming Language Semantics. M.I.T press, 1977.

    Google Scholar 

  26. Trakhtenbrot, A.: On Representation of Sequential and Parallel Functions. Proceeding of 4th Symposium on Mathematical Foundations of Comp. Sci., vol 32, pp. 411–417, 1975.

    MathSciNet  Google Scholar 

  27. Trakhtenbrot, B.: Topics in Typed Programming Languages, Lecture Notes. CMU, Dep. of Comp. Sci., Fall Term, 1985.

    Google Scholar 

  28. Turner, D.: A New Implementation Technique for Applicative Languages. Software — Practice & Experience, 9(1), pp. 31–39, 1979.

    Article  MATH  Google Scholar 

  29. Vuillemin, J.: Proof Techniques for Recursive Programs. Ph.D Thesis, Stanford University, 1973.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Arnon Avron.

Rights and permissions

Reprints and permissions

About this article

Cite this article

Avron, A., Sasson, N. Stability, Sequentiality and Demand Driven Evaluation in Dataflow. Form Asp Comp 6, 620–642 (1994). https://doi.org/10.1007/BF03259389

Download citation

  • Published:

  • Issue Date:

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

Keywords

Navigation