skip to main content
research-article

Complementing Ada with other programming languages

Published:01 November 2009Publication History
Skip Abstract Section

Abstract

This paper presents our experience in using Ada and the Ravenscar profile in a robotics non-profit association and in a robotics competition. While Ada is our primary and dominant language, we have complemented it with a hardware description language (Verilog) and an interactive language (Forth). We describe the interface between those languages, and the design choices that have been made to minimize the risks taken by leaving the Ada world. We also explain why we chose in some conditions to relax restrictions imposed by the use of the Ravenscar profile.

References

  1. As-2 Embedded Computing Systems Committee SAE. Architecture Analysis&Design Language (AADL). SAE Standards no AS5506, November 2004.Google ScholarGoogle Scholar
  2. R. Barry. FreeRTOS Reference Manual - API Functions and Configuration Options. eBook, 2009.Google ScholarGoogle Scholar
  3. A. Burns. The Ravenscar Profile. ACM Ada Letters, 4:49--52, 1999. Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. A. Burns, B. Dobbing, and T. Vardanega. Guide for the use of the Ada Ravenscar Profile in high integrity systems. Technical report, University of York, January 2003.Google ScholarGoogle Scholar
  5. J. Corbet, A. Rubini, and G. Kroah-Hartman. Linux Device Drivers. O'Reilly, 3 edition, 2005. Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. B. Dupouy, O. Hainque, L. Pautet, and S. Tardieu. Overview: the SPIF project. In Proceedings of the Reliable Software Technologies conference, 1997. Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. A. Ertl. A Portable Forth Engine. In Proceedings of the EuroFORTH conference, 1993.Google ScholarGoogle Scholar
  8. M. A. Ertl. Is Forth Code Compact? - A Case Study. In Proceedings of the EuroForth conference, 1999.Google ScholarGoogle Scholar
  9. B. S. Fagin. Teaching Computer Science with Robotics using Ada/Mindstorms 2.0. In Proceedings of the 2001 Annual ACM SIGAda International Conference, pages 73--78. ACM Press, 2001. Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. P. Frenger. Forth as a robotics language: part two. SIGPLAN Not., 32(6):19--22, 1997. Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. P. Frenger. Robot control techniques: Part one: a review of robotics languages. SIGPLAN Not., 32(4):27--31, 1997. Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. J. A. Gutierrez, M. Naeve, E. Callaway, M. Bourgeois, C. Mitter, and B. Heile. IEEE 802.15.4: A developing standard for low-power low-cost wireless personal area networks. IEEE Network, 15:12--19, September 2001. Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. J. Hightower and G. Borriello. Location Systems for Ubiquitous Computing. IEEE Computer, 34(8):57--66, 2001. Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. P. Hudak. Modular Domain Specific Languages and Tools. In Proceedings of fifth international conference on software reuse, pages 134--142. IEEE Computer Society Press, 1998. Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. J. Hugues, B. Zalila, and L. Pautet. From the Prototype to the Final Embedded System Using the Ocarina AADL Tool Suite. ACM Transactions in Embedded Computing Systems (TECS), 7(4):1--25, July 2008. Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. G. Jones. Maximum PC 2005 Buyer's Guide. Prentic Hall, 2005.Google ScholarGoogle Scholar
  17. D. G. Lowe. Distinctive Image Features from Scale-Invariant Keypoints. International Journal of Computer Vision, 60(2):91--110, 2004. Google ScholarGoogle ScholarDigital LibraryDigital Library
  18. B. O'Sullivan. Mercurial: The Definitive Guide. O'Reilly Media, 2009. Google ScholarGoogle ScholarDigital LibraryDigital Library
  19. S. Tardieu. GLADE: une implémentation de l'annexe des systèmes répartis d'Ada 95. PhD thesis, Ecole Nationale Supérieure des Télécommunications, October 1999.Google ScholarGoogle Scholar
  20. S. Tardieu. AForth, a Forth interpreter in Ada. http://www.ohloh.net/p/aforth, 2009.Google ScholarGoogle Scholar
  21. Technical Committee X3J14. Forth. American National Standards Institute, Inc., March 1994.Google ScholarGoogle Scholar
  22. D. E. Thomas. The Verilog R Hardware Description Language. Springer, 3 edition, May 1996. Google ScholarGoogle ScholarDigital LibraryDigital Library
  23. Télécom Robotics. Tutoriel Ada. http://www.telecom-robotics.org/ada, 2009.Google ScholarGoogle Scholar

Index Terms

  1. Complementing Ada with other programming languages

                  Recommendations

                  Comments

                  Login options

                  Check if you have access through your login credentials or your institution to get full access on this article.

                  Sign in

                  Full Access

                  • Published in

                    cover image ACM SIGAda Ada Letters
                    ACM SIGAda Ada Letters  Volume 29, Issue 3
                    SIGAda '09
                    December 2009
                    113 pages
                    ISSN:1094-3641
                    DOI:10.1145/1653616
                    Issue’s Table of Contents
                    • cover image ACM Conferences
                      SIGAda '09: Proceedings of the ACM SIGAda annual international conference on Ada and related technologies
                      November 2009
                      142 pages
                      ISBN:9781605584751
                      DOI:10.1145/1647420

                    Copyright © 2009 ACM

                    Publisher

                    Association for Computing Machinery

                    New York, NY, United States

                    Publication History

                    • Published: 1 November 2009

                    Check for updates

                    Qualifiers

                    • research-article

                  PDF Format

                  View or Download as a PDF file.

                  PDF

                  eReader

                  View online with eReader.

                  eReader
                  About Cookies On This Site

                  We use cookies to ensure that we give you the best experience on our website.

                  Learn more

                  Got it!