What does Frontline Support mean to you?
It means a very timely dialogue with customers on any questions they might have about how to best use Ada and GNAT in their projects. The answers we provide may be explanations about language semantics or about compiler messages, but they can also be suggestions on software architecture, workarounds to obtain better performance or bypass an occasional bug, or programming examples to show preferred patterns of use. In all cases we aim to be as helpful as possible, as rapidly as possible: a customer’s deadline becomes our deadline. As a long-time professor of computer science, I find the pedagogical side of support activity particularly rewarding, but I also welcome queries that become enhancements to our tools, and end up benefiting all our customers. The quality of our tools improves constantly, thanks to the very close feedback we get through our support activities.
What drew you to Ada?
I became interested in Ada at the inception of the language, in connection with an academic project to build an executable semantic definition of Ada83. In following the evolution of the language in the intervening 25 years, I have always admired the coherence of its design, in particular its focus on both software aspects and human engineering aspects. On the one hand the type system emphasizes safety of code: it obliges the programmer to state explicitly semantic details that in other languages remain unstated (and thus often confused). On the other hand the surface syntax of the language makes Ada code particularly readable and thus easier to understand and to maintain. The result is the most elegant strongly-typed language I know.
What’s your favorite feature of GNAT Pro Technology?
The compiler, whose diagnostic messages are a model of clarity and helpfulness. I certainly wish compilers for other languages were equally helpful!