Compiling Argos into Boolean equations
In most imperative synchronous languages (Esterel, Argos, Statecharts,...), the semantics of the control structures may be conveniently described as compositions of Mealy machines. This constitutes the usual formal semantics of Argos, for instance, where basic components are Mealy machines. On the other hand, the compilation process should not be based upon an explicit generation of the Mealy machine that represents the behaviour of the whole program, because this machine may have a very large number of states. Hence we try to perform a symbolic compilation into a Mealy machine implicitly represented by a set of Boolean equations.
We give here the direct semantics of Argos in terms of such equations, and show that this semantics coincides with the usual one. The current implementation of the Argos compiler produces DC code, which is the common equational format for synchronous languages. This will allow to merge imperative and declarative synchronous languages (Argos and Lustre, for instance), by merging DC files.
KeywordsBehaviour Expression Parallel Composition Current Reaction Boolean Expression Boolean Formula
Unable to display preview. Download preview PDF.
- [Ber]G. Berry. The constructive semantics of Esterel. in preparation.Google Scholar
- [Ber91]G. Berry. A hardware implementation of pure esterel. In ACM Workshop on Formal Methods in VLSI Design, Miami, January 1991.Google Scholar
- [BG92]G. Berry and G. Gonthier. The Esterel synchronous programming language: Design, semantics, implementation. Science Of Computer Programming, 19(2):87–152, 1992.Google Scholar
- [CS95]C2A-SYNCHRON. The common format of synchronous languages — The declarative code DC version 1.0. Technical report, SYNCHRON project, October 1995.Google Scholar
- [Hal93]N. Halbwachs. Synchronous programming of reactive systems. Kluwer Academic Pub., 1993.Google Scholar
- [Har87]D. Harel. Statecharts: A visual approach to complex systems. Science of Computer Programming, 8:231–275, 1987.Google Scholar
- [HM95]N. Halbwachs and F. Maraninchi. On the symbolic analysis of combinational loops in circuits and synchronous programs. In EUROMICRO, Como, Italy, September 1995.Google Scholar
- [IEE91]Another look at real-time programming. Special Section of the Proceedings of the IEEE, 79(9), September 1991.Google Scholar
- [JLMR94]M. Jourdan, F. Lagnier, F. Maraninchi, and P. Raymond. A multiparadigm language for reactive systems. In In 5th IEEE International Conference on Computer Languages, Toulouse, May 1994. IEEE Computer Society Press.Google Scholar
- [JM94]M. Jourdan and F. Maraninchi. Studying synchronous communication mechanisms by abstractions. In IFIP Working Conference on Programming Concepts, Methods and Calculi, San Miniato, Italy, jun 1994. Elsevier Science Publishers.Google Scholar
- [Mar92]F. Maraninchi. Operational and compositional semantics of synchronous automaton compositions. In CONCUR. LNCS 630, Springer Verlag, august 1992.Google Scholar