1 / 29

Confessions of an Academic Ada Zealot

Explore the intriguing history, mandate, and comparisons of the Ada programming language as shared by Martin C. Carlisle, an Associate Professor at the United States Air Force Academy, Department of Computer Science.

hyacintha
Download Presentation

Confessions of an Academic Ada Zealot

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Confessions of an Academic Ada Zealot Martin C. Carlisle Associate Professor United States Air Force Academy Department of Computer Science Confessions of an Academic Ada Zealot Martin Carlisle

  2. Disclaimer • Opinions contained herein are those of the author, and not necessarily those of the US Air Force Academy, US Air Force, or United States Government. Confessions of an Academic Ada Zealot Martin Carlisle

  3. History (1980s) $7600.00 $640.00 $435.00 Confessions of an Academic Ada Zealot Martin Carlisle

  4. Another 80s DoD acquisition • ANSI/MIL-STD-1815A-1983 (the Ada programming language) • Started in 1974. Requirements in 1978, standardized in 1983. Confessions of an Academic Ada Zealot Martin Carlisle

  5. The Mandate • Required for all DoD critical systems (1983) • Required for use in DoD weapons systems (Deputy Sec. Of Defense, March 1987) • Required for all DoD software (June 1, 1991) Confessions of an Academic Ada Zealot Martin Carlisle

  6. Ada in 80s • Compilers were expensive and slow • As an innovative language, hard to implement Confessions of an Academic Ada Zealot Martin Carlisle

  7. Major Contracts • 1992: Air Force gives contract to NYU for GNAT. Ada Core Technologies established in 1994. • 1995: Academic Ada contract to Intermetrics Confessions of an Academic Ada Zealot Martin Carlisle

  8. The Mandate’s Effect • In 1994, 33% of code written in Ada, 22% in C, 37% in “other approved languages” • “Many projects have ignored or manipulated the policy on waivers, employing languages other than Ada without the required waiver ” (NRC) Confessions of an Academic Ada Zealot Martin Carlisle

  9. The Mandate Destroyed • Based on the NRC report, Ada no longer mandated (March 1997) • But where’s the $15 million/year? • AJPO closed Sept 1998 Confessions of an Academic Ada Zealot Martin Carlisle

  10. Why we STILL teach Ada at USAFA • Clear syntax • Supports software engineering principles • Cheaper development costs • Time constraints for cadets are large! Confessions of an Academic Ada Zealot Martin Carlisle

  11. Steelman Requirements • Ada 93% • Java 72% • C++ 68% • C 53% "Ada, C, C++, and Java vs. The Steelman" David Wheeler, Institute for Defense Analysis, 1997 Confessions of an Academic Ada Zealot Martin Carlisle

  12. Comparing Costs (C) • Development costs of Ada were roughly half those of C, with C code having an order of magnitude greater errors.  75% of the programmers were experienced in C, while only 25% were experienced in Ada. Stephen Ziegler, Rational Corp. "Comparing Development Costs of C and Ada" Confessions of an Academic Ada Zealot Martin Carlisle

  13. Comparing Costs (C++) • Ada error rate was approximately 50% of the norm.  Cost of delivery of Ada was lower. Reifer Consultants "Quantifying the Debate: Ada vs. C++" Confessions of an Academic Ada Zealot Martin Carlisle

  14. Comparing Costs (C++) • Analysis of info systems and C3 systems showed Ada had a 35% advantage in front-end development costs and a 70% advanatage in maintenance costs. "Ada and C++: A Business Case Analysis" USAF Report. (TRW) Confessions of an Academic Ada Zealot Martin Carlisle

  15. Comparing Languages (FAA) • Evaluation included capability, efficiency, availability/reliability, maintainability/ extensibility, lifecycle cost, and risk. Ada 78.8 C++ 63.9 C 59.5 FORTRAN 47.0 Software Engineering Institute (for FAA) Confessions of an Academic Ada Zealot Martin Carlisle

  16. Comparing Ada and Java • Concludes Java is more difficult to teach to intro programmers because of complex syntax for simple programs, lack of pointers, difficulties with types. http://www.act-europe.fr/texts/papers/ada-java-teaching-comp.pdf (Brosgol) Confessions of an Academic Ada Zealot Martin Carlisle

  17. Eliminating Bugs • "My Hairiest Bug War Stories" CACM April 1997.  Ada compilers unaided would have caught 88% of these bugs. John McCormick ("Ada Kills Hairy Bugs") Confessions of an Academic Ada Zealot Martin Carlisle

  18. Languages in CS1 • Ada instructors believed their current language was best at a ratio of 3-4x over C and C++ instructors. http://academic.scranton.edu/faculty/beidler/ levy/ Confessions of an Academic Ada Zealot Martin Carlisle

  19. Nobody uses Ada • Ada is used in lots of surprising places, including the NYC Subway and the Hertz navigation system. http://www.seas.gwu.edu/~mfeldman/ada-project-summary.html Confessions of an Academic Ada Zealot Martin Carlisle

  20. Ada in Universities • Approximately 150 universities use Ada in 1st or 2nd computer science course • Number relatively constant over last couple of years • http://www.seas.gwu.edu/~mfeldman/ada-foundation.html Confessions of an Academic Ada Zealot Martin Carlisle

  21. AP Board • Starts in Pascal (first offered 1984) • Moves to C++ in 1998-1999 (despite open opposition from ACM educators) • Moves to Java in 2003-2004 Confessions of an Academic Ada Zealot Martin Carlisle

  22. What kinds of tools are we looking for? • Cheap • Simple • Powerful • Must compare favorably with Visual Studio, freely available Java tools Confessions of an Academic Ada Zealot Martin Carlisle

  23. Tools to Support Ada in Education and Elsewhere • GNAT/AdaGIDE Confessions of an Academic Ada Zealot Martin Carlisle

  24. Leveraging Technology with Ada • JGNAT Connect Four applet demo Confessions of an Academic Ada Zealot Martin Carlisle

  25. Leveraging Technology with Ada • Gtk/GLADE/GVD • Primarily Linux based, but Windows version • XML based GUI builder • Multi-language debugging platform Confessions of an Academic Ada Zealot Martin Carlisle

  26. Leveraging Technology with Ada • RAPID • Multi-platform GUI builder http://www.usafa.af.mil/dfcs/bios/carlisle.html Confessions of an Academic Ada Zealot Martin Carlisle

  27. Leveraging Technology with Ada • CLAW • Windows GUI builder • Free demo, pay for full version RR software (www.rrsoftware.com) Confessions of an Academic Ada Zealot Martin Carlisle

  28. Leveraging Technology with Ada • GWindows • Free OO Windows library • Currently no GUI builder www.adapower.com Confessions of an Academic Ada Zealot Martin Carlisle

  29. Leveraging Technology with Ada • GNATCOM • MS reusable object technology http://www.adapower.com Confessions of an Academic Ada Zealot Martin Carlisle

More Related