• DocumentCode
    354372
  • Title

    Ada++: object-oriented programming in Ada-83

  • Author

    Flatt, Robert A. ; Brendemihl, David ; Prather, Catherine ; Robb, John H.

  • Author_Institution
    Lockheed Martin, Fort Worth, TX, USA
  • Volume
    1/17 pp. vol.1
  • fYear
    1999
  • fDate
    36465
  • Abstract
    Many Ada programmers have used object-oriented analysis (OOA) and object-oriented design (OOD) but have never been able to take full advantage of object technology because they could not implement object-oriented programming (OOP) in Ada-83. This paper describes a mechanism to implement OOP in Ada-83. Ada-83 is well suited for object based designs. Implementing the critical OOP features of inheritance and polymorphism in Ada-83 allows a programmer to move beyond an object-oriented design to an object design that utilizes object-oriented programming. By taking advantage of the strengths of both Ada-83 and OOP, software systems that are reliable, resilient to change, and easy to maintain can be developed. This paper provides details on the mechanism used to implement inheritance and polymorphism in Ada-83. This mechanism was developed for real-time applications that could not use Ada´s tasking mechanism or dynamic memory allocation. Ada source code examples are provided to illustrate this OOP technique
  • Keywords
    Ada; inheritance; object-oriented programming; Ada++; Ada-83; abstract class; attributes; class diagram; concrete class; implementation method; inheritance; object based designs; object design; object-oriented programming; polymorphism; real-time applications; source code; Animals; Application software; Concrete; Contacts; Magnetic switching; Maintenance; Object oriented programming; Programming profession; Software systems; Switches;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Digital Avionics Systems Conference, 1999. Proceedings. 18th
  • Conference_Location
    St Louis, MO
  • Print_ISBN
    0-7803-5749-3
  • Type

    conf

  • DOI
    10.1109/DASC.1999.863690
  • Filename
    863690