Data-flow synchronous languages

  • Albert Benveniste
  • Paul Caspi
  • Paul Le Guernic
  • Nicolas Halbwachs
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 803)


In this paper, we present a theory of synchronous data-flow languages. Our theory is supported by both some heuristic analysis of applications and some theoretical investigation of the data-flow paradigm. Our model covers both behavioural and operational aspects, and allows both synchronous and asynchronous styles of implementation for synchronous programs. This model served as a basis to establish the GC common format for synchronous data-flow languages.


data-flow concurrency reactive real-time synchrony vs. asynchrony 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    E. A. Ashcroft and W. W. Wadge, Lucid, the data-flow programming language, Academic Press, 1985Google Scholar
  2. 2.
    A. Benveniste, G. Berry, Eds., Another look at real-time programming, special section of Proc. of the IEEE, vol. 9 n∘ 9, September 1991, 1268–1336.Google Scholar
  3. 3.
    A. Benveniste, G. Berry, “Real-Time systems design and programming”, Another look at real-time programming, special section of Proc. of the IEEE, vol. 9 n∘ 9, September 1991, 1270–1282.Google Scholar
  4. 4.
    A. Benveniste, P. Le Guernic, Y. Sorel, M. Sorine, “A denotational theory of synchronous communicating systems”, Information and Computation, vol. 99 n∘ 2, August 1992, 192–230.Google Scholar
  5. 5.
    A. Benveniste, P. Le Guernic, “Hybrid Dynamical Systems Theory and the Signal Language”, IEEE transactions on Automatic Control, 35(5), May 1990, pp. 535–546.Google Scholar
  6. 6.
    A. Benveniste, P. Le Guernic, C. Jacquemot, “Synchronous programming with events and relations: the Signal language and its semantics”, Science of Computer Programming, 16 (1991) 103–149.Google Scholar
  7. 7.
    G. Berry, “Real Time Programming: Special Purpose Languages or General Purpose Languages”, 11th IFIP Wold Congress 1989, San Francisco.Google Scholar
  8. 8.
    F. Boussinot, R. de Simone, “The Esterel language”, Another look at real-time programming, special section of Proc. of the IEEE, vol. 9 n∘ 9, September 1991, 1293–1304.Google Scholar
  9. 9.
    F. Boussinot, Proposition de sémantique dénotationnelle, pour des réseaux de processus avec mélange équitable, Theoretical Computer Science, Vol. 82, 173–206, 1982Google Scholar
  10. 10.
    J.D. Brock and W.B. Ackerman, Scenarios, a model of non determinate computation, in Proc. Conf. on Formal Definition of Programming Concepts, LNCS 107, Springer, Berlin, 252–259, 1981.Google Scholar
  11. 11.
    P. Caspi, Clocks in Dataflow languages, Theoretical Computer Science, Vol. 94, 125–140, 1992Google Scholar
  12. 12.
    S. Eilenberg, Automata languages and machines, Vol. A, Academic Press, New York and London, 1974.Google Scholar
  13. 13.
    J. T. Feo and D. C. Cann and R. R. Oldehoeft, A report on the Sisal language project, J. Par. Distrib. Comp, Vol. 10, 349–366, 1990Google Scholar
  14. 14.
    H. Gaifman and V. Pratt, Partial order models of concurrency, and the computation of functions, in Proc. of Symposium on Logic in Computer Science, North Holland, Amsterdam, 1987, 72–85Google Scholar
  15. 15.
    N. Ghezal, S. Matiatos, P. Piovesan, Y. Sorel et M. Sorine, Un environnement de programmation pour multiprocesseur de traitement du signal, Research Report INRIA-Rocquencourt, 1990, N∘ 1236Google Scholar
  16. 16.
    N. Halbwachs, P. Caspi, D. Pilaud, “The synchronous dataflow programming language Lustre”, Another look at real-time programming, special section of Proc. of the IEEE, vol. 9 n∘ 9, September 1991, 1305–1320.Google Scholar
  17. 17.
    D. Harel and A. Pnueli, “On the Development of Reactive Systems” in Logics and Models of Concurrent Systems, NATO ASI Series, Vol. 13 (K. R. Apt, ed.), Springer-Verlag, New York, 1985, pp. 477–498.Google Scholar
  18. 18.
    D. Harel, H. Lachover, A. Naamad, A. Pnueli, M. Politi, R. Sherman, A. Shtul-Trauring and M. Trakhtenbrot, “Statemate: A Working Environment for the Development of Complex Reactive Systems”, IEEE Transactions on Software Engineering16 (1990), 403–414.Google Scholar
  19. 19.
    Inmos Ltd, TheOccamprogramming manual, Prentice Hall, 1984.Google Scholar
  20. 20.
    G. Kahn, The semantics of a simple language for parallel programming, in Proc. of IFIP 74 Congress, North Holland, Amsterdam, 1974.Google Scholar
  21. 21.
    L. Lamport, “What good is temporal logic”, in Proc. IFIP 9th World Congress, R.E.A. Mason Ed., North Holland, 657–668, 1983.Google Scholar
  22. 22.
    E.A. Lee, D.G. Messerschmitt, “Static Scheduling of Synchronous Data Flow Programs for Digital Signal Processing”, IEEE Trans. on Computers, Jan. 1987, C-36(2).Google Scholar
  23. 23.
    E.A. Lee, “Consistency in Data-Flow graphs”, Research Report UCB/ERL M89/125, Electronics Research Lab., College of Eng., U.C. Berkeley, 1989, to appear in IEEE Trans. on Parallel and Distributed Systems.Google Scholar
  24. 24.
    P. Le Guernic, T. Gautier, M. Le Borgne, C. Le Maire, “Programming realtime applications with Signal”, Another look at real-time programming, special section of Proc. of the IEEE, vol. 9 n∘ 9, September 1991, 1321–1336.Google Scholar
  25. 25.
    Z. Manna, A. Pnueli, The Temporal Logic of Reactive and Concurrent Systems — Specification, Springer Verlag, 1992.Google Scholar
  26. 26.
    R. Milner, A Calculus of Communicating Systems, Lecture Notes in Computer Science, Vol. 92, Springer Verlag, Berlin, 1980.Google Scholar
  27. 27.
    R. Milner, “Turing award lecture: elements of interaction”, CACM, Vol 36, N∘1, Jan. 1993, 78–89.Google Scholar
  28. 28.
    J. Misra, Equational reasonning about nondeterministic processes, in Formal Aspects of Computing, 1990, 167–195.Google Scholar
  29. 29.
    A. Pnueli, “Applications of Temporal Logic to the Specification and Verification of Reactive Systems: A Survey of Current Trends”, in Current Trends in Concurrency (de Bakker et al., eds.), Lecture Notes in Comput. Sci., Vol.224, Springer-Verlag, Berlin, 1986, pp.510–584.Google Scholar
  30. 30.
    A. Rabinovitch, Pomset semantics is consistent with data flow semantics, EATCS Bull., 107–117, 1987Google Scholar
  31. 31.
    TheC2Agroup: Projet SYNCHRONE, Les formats communs des langages synchrones, INRIA Tech. Rep. n∘ 157, June 1993.Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 1994

Authors and Affiliations

  • Albert Benveniste
    • 1
  • Paul Caspi
    • 2
  • Paul Le Guernic
    • 1
  • Nicolas Halbwachs
    • 2
  1. 1.INRIA-IRISARennes CedexFrance
  2. 2.Laboratoire VERIMAG, Miniparc - ZIRSTMontbonnot St MartinFrance

Personalised recommendations