Abstract
We present an application of the JavaTM programming language to specify and implement reactive real-time systems. We have developed and tested a collection of classes and methods to describe concurrent modules and their asynchronous communication by means of signals. The control structures are closely patterned after those of the synchronous language Esterel, succinctly describing concurrency, sequencing and preemption. We show the user-friendliness and efficiency of the proposed technique by using an example from the automotive domain.
- ARNOLD, K. AND GOSLING, J. 1996. The Java programming language. Addison-Wesley, Reading, Mass. Google Scholar
- BALARIN, F., SENTOVICH, E., CHIODO, M., GIUSTO, P., HSIEH, H., TABBARA, B., JURECSKA, A., LAVAGNO, L., PASSERONE, C., SUZUKI, K., AND SANGIOVANNI-VINCENTELLI, A. 1997. Hardware-Software Co-design of Embedded Systems--The POLIS experience. Kluwer Academic, Boston, MA. Google Scholar
- BOUSSINOT, F., DOUMENC, G., AND STEFANI, J. 1996. Reactive objects. Ann. Telecommun. 51, 9-10 (September), 459-473.Google Scholar
- HALBWACHS, N. 1993. Synchronous Programming of Reactive Systems. Kluwer Academic Publishers. Google Scholar
- HOARE, C. A.R. 1978. Communicating Sequential Processes. Commun. ACM 21, 8 (Aug.) 666-677. Google Scholar
- LINDHOLM, T. AND YELLIN, F. 1996. The JavaTM Virtual Machine Specification. Addison- Wesley, Reading, Mass. Google Scholar
- NIELSEN, K. 1997. See http://www.newmonics.com.Google Scholar
- V.D. BEEK, M. 1994. A comparison of Statecharts variants. In Formal Techniques in Real- Time and Fault-Tolerant Systems, Third International Symposium Proceedings (Sept. 1994). Springer Verlag, New York, 128-148. Google Scholar
- YOUNG, J. AND NEWTON, R. 1997. Embedding programs in the Java language in the synchronous model of computation through the process of successive, formal refinement. In Proceedings of the International Conference on Computer-Aided Design (Nov. 1997).Google Scholar
Index Terms
- Modeling reactive systems in Java
Recommendations
Interactive Programming of Reactive Systems
ReactiveML is a synchronous reactive extension of the general purpose programming language OCaml. It allows to program reactive systems such as video games or simulators. This paper presents rmltop, the ReactiveML counterpart of the OCaml toplevel. This ...
Backstage Java: making a difference in metaprogramming
OOPSLA '11: Proceedings of the 2011 ACM international conference on Object oriented programming systems languages and applicationsWe propose Backstage Java (BSJ), a Java language extension which allows algorithmic, contextually-aware generation and transformation of code. BSJ explicitly and concisely represents design patterns and other encodings by employing compile-time ...
Backstage Java: making a difference in metaprogramming
OOPSLA '11We propose Backstage Java (BSJ), a Java language extension which allows algorithmic, contextually-aware generation and transformation of code. BSJ explicitly and concisely represents design patterns and other encodings by employing compile-time ...
Comments