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.
Similar content being viewed by others
References
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.
Berry, G.: Bottom-up Computation of Recursive Programs. R.A.I.R.O. Informatique Theorique vol. 10 no. 3, pp. 47–82 mars 1976.
Berry, G.: Fr Sequentialité de Évaluation Formelle des λ-expressions. Proc. 3rd International Colloquium on Programming, Paris, March 28–30, 1978, DUNOD.
Berry, G.: Stable Models of typed lambda — calculi. Proc. 5th Coll. on Automata, Languages and Programming, July 1978, pp. 72–89.
Berry, G.: Fr Modèles complètement adéquateet Stable des λ-calculus typés. These de Doctorat d’État, Université Paris VII, 1979.
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.
Curien, P.: Categorical Combinators, Sequential Algorithms and Functional Programming. Ph.D Thesis, Univesite Paris 7, Paris, 1985.
Faustini, A.: The equivalence of an Operational and Denotational Semantics for Pure Dataflow. Ph.D Thesis, University of Warwick, 1982.
IEEE. Special issue on Dataflow Systems. IEEE Comput. 15, 2 Feb 1982.
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).
Kahn, G.: The Semantics of a Simple Language for a Parallel Programming. Proceeding of the IPIF Congress 74, pp. 471–475, 1974.
Kahn, G. and Plotkin, G.: Structures de données concrètes. Rapport IRIA — LABORIA 336 (D).
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.
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.
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.
Loeckx, Jacques and Sieber, Kurt.: The Foundations of Program Verification. Teubner, 1984.
Milne, R. and Strachey, C.: A Theory of Programming Language Semantics. Chapman and Hall, 1976.
Milner, R.: Fully Abstract Models of Typed α-calculi. Theoret. Comput. Sci., vol 4, no 1, pp. 1–23, Feb 1977.
Oliveira, J.N.: The Formal Semantics of Deterministic Dataflow Programs. Ph.D. Thesis, Department of Computer Science, University of Manchester, February 1984.
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.
Pingali, K.: Demand Driven Evaluation on Dataflow Machines. Ph.D Thesis, 1986.
Richmond, G.: A Dataflow Implementation of SASL. M.SC. thesis, Department of Computer Science, University of Manchester, 1982.
Scott, D. and de Bakkar, J.W.: A Theory of Programs. IBM Seminar unpublished notes, 1969.
Scott, D.: Outlines of Mathematical Theory of Computation. 4th Annual Princeton Conf. Inform. Sc. and Sys. pp. 169–176, 1970.
Stoy, J.: Denotational Semantics: The Scott-Strachey Approach to Programming Language Semantics. M.I.T press, 1977.
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.
Trakhtenbrot, B.: Topics in Typed Programming Languages, Lecture Notes. CMU, Dep. of Comp. Sci., Fall Term, 1985.
Turner, D.: A New Implementation Technique for Applicative Languages. Software — Practice & Experience, 9(1), pp. 31–39, 1979.
Vuillemin, J.: Proof Techniques for Recursive Programs. Ph.D Thesis, Stanford University, 1973.
Author information
Authors and Affiliations
Corresponding author
Rights 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
Published:
Issue Date:
DOI: https://doi.org/10.1007/BF03259389