GtkAda: Design and Implementation of a High Level Binding in Ada

The purpose of this paper is to describe the design and implementation choices that were made during the development of an Ada binding to the popular Gtk+ graphical toolkit. We concentrate on the methods used to interface between C and Ada, but many topics described in this paper are not tied to Ada and can be applied to other high level languages that need to interface with existing libraries. We also describe the various mechanisms developed to provide a powerful GUI builder with GtkAda.