Benefits of type inference for an object-oriented real-time language
Abstract
Real Time Talk is a framework and an object-oriented language for distributed hard real-time systems. This paper presents past, present, and future work in the Real Time Talk project. It concentrates on the language and programming part of Real Time Talk, and the problems a dynamically typed language impose on a real-time system.We look at how some of these problems can be solved by type inference and how type information can assist the compiler in accepting larger classes of real-time programs, generate more efficient and deterministic code, provide better estimation of execution times, and avoid run-time type errors. With type inference, one can have the best of two worlds --- efficiency and type safety, without the need for manual type declarations. An example is used to illustrate these ideas.
References
[1]
{Ame83} American National Standards Institute, Inc. The Programming language Ada reference manual. Springer-Verlag, 1983.
[2]
{Bar93} A.J. Barnard. From Types to Dataflow: Code Analysis for an Object-Oriented Language. Technical Report UMCS-93- 10-2, Department of Computer Science, Manchester University, 1993.
[3]
{BEG92} E. Brorsson, C. Eriksson, and J. Gustafsson. RealTimeTalk: an Object-Oriented Language for Hard Real-Time Systems. In Intl Workshop on Real-Time Programming WRTP'92, IFAC/IFIP, Bruges, Belgium, June 1992.
[4]
{Bud91} T. Budd. An Introduction to Object-Oriented Programming. Addison-Wesley, 1991.
[5]
{CC77} P. Cousot and R. Cousot. Abstract Interpretation: A Unified Lattice Model for Static Analysis of Programs by Construction of Approximation of Fixpoints. In ACM Symposium on Principles of Programming Languages, pages 238-258, 1977.
[6]
{EGG+95} C. Eriksson, M. Gustafsson, J. Gustafsson, J. Mäki-Turja, H. Thane, K. Sandström, and E. Brorsson. RealTimeTalk a Framework for Object-Oriented Hard & Soft Real-Time Systems. In Tenth Annual ACM Conference on Object-Oriented Programming Systems, Languages and Applications (OOPSLA), Texas, USA, Oct 1995.
[7]
{EGGB93} C. Eriksson, J. Gustafsson, M. Gustafsson, and E. Brorsson. An Object-Oriented Framework for Designing Hard Real-Time Systems. In IEEE Real-Time Workshop, Oulu, Finland, June 1993.
[8]
{EHMS95} C. Eriksson, R. Hassel, L. Myrehed, and K. Sandström. A Graphical Design Environment for the Development of Object-Oriented Hard Real-Time Systems. In TOOLS Europe 95, Paris, France, March 1995.
[9]
{ELL95} C. Eriksson, K.-L. Lundbäck, and H. Lawson. An RTOS Integrated with an Offline Scheduler. In On Algorithms and Architectures for Real-Time Control, Ostend, Belgium , May 1995.
[10]
{GR89} A. Goldberg and D. Robson. Smalltalk-80: The Language. Addison-Wesley, 1989.
[11]
{Gra89} J.O. Graver. Type-Checking and Type-Inference for Object-Oriented Programming Languages. PhD thesis, University of Illinois at Urbana-Champaign, 1989.
[12]
{Gus94a} J. Gustafsson. Calculation of Execution Times in Object-Oriented Real-Time Software -- A study focused on RealTimeTalk, 1994. Licentiate thesis.
[13]
{Gus94b} J. Gustafsson. Calculation of Execution Times in RealTimeTalk -- An Object-Oriented Language for Real-Time Systems. In International Workshop On Object-Oriented Real-Time Dependable Systems, Dana Point, CA, USA, Oct 1994.
[14]
{MTH90} R. Milner, M. Tofte, and R. Harper. The definition of Standard ML. MIT Press, 1990.
[15]
{PS94} J. Palsberg and M. I. Schwartzbach. Object-Oriented Type Systems. J. Wiley, 1994.
[16]
{Str91} B. Stroustrup. The C++ Programming Language. Addison-Wesley, 1991.
[17]
{Suz81} N. Suzuki. Inferring Types in Smalltalk. In ACM Symposium on Principles of Programming Languages, pages 187-199, 1981.
[18]
{Tha95} H. Thane. Distributed Real-Time Clock synchronization on the CAN bus. Master's thesis, University of Mälardalen, 1995.
Index Terms
- Benefits of type inference for an object-oriented real-time language
Comments
Information & Contributors
Information
Published In
Copyright © 1996 Authors.
Publisher
Association for Computing Machinery
New York, NY, United States
Publication History
Published: 01 January 1996
Published in SIGPLAN-OOPS Volume 7, Issue 1
Check for updates
Qualifiers
- Article
Contributors
Other Metrics
Bibliometrics & Citations
Bibliometrics
Article Metrics
- 0Total Citations
- 128Total Downloads
- Downloads (Last 12 months)8
- Downloads (Last 6 weeks)4
Other Metrics
Citations
View Options
Get Access
Login options
Check if you have access through your login credentials or your institution to get full access on this article.
Sign in