What does Frontline Support mean to you?
The elimination of the distinction between development and customer support. Developers working directly with customers to identify improvements that would add value. A faster path from the identification of a problem to the availability of a solution with fewer opportunities for intermediate miscommunication.
What drew you to Ada?
I know of no language that does a better job than Ada of allowing the developer to communicate his or her intent to the compiler, particularly in expressing the invariants that the program depends on. The more that you can tell the compiler about how you want your program to work, the more the compiler can help you ensure that it does. There does not have to be a tradeoff between runtime performance and program maintainability – accurately capturing the developer’s intent provides a big boost in both directions. Ada’s encapsulation mechanisms provide tremendous benefits in maintainability at no cost in performance. Ada’s emphasis on static checking ensures that most bugs are caught at compile time; Ada’s dynamic checking ensures that other bugs can be debugged at the Ada source level and that type safety is preserved. Ada’s stack-based handling of dynamic storage allocation (e.g., functions with unconstrained results, dynamic-sized local objects) provides a more balanced alternative to either of the simpler extremes (i.e., either no language support for dynamic data structures or a do-everything-on-the-heap model which relies on garbage collection).
Incidentally, my favorite of the features added in Ada05 is the elimination of the Ada95 rule disallowing the declaration of a tagged type extension in a more nested scope than that of the parent type.
What’s your favorite feature of GNAT Pro Technology?
Easily my favorite feature of GNAT Pro Technology is its momentum. The recently announced partnerships with Praxis and SofCheck, the addition of new targets, and the continued improvement of the product line in many directions at once are all consequences of the fact that AdaCore is a company with the people, the resources, and the commitment needed to do the job right.