Idenity Graphic
what's new
Classic MacOS
MacOS X
FAQ
contact

MacOS X/Darwin

------------------------------------------------

Compilers

The GNU Ada Translator (GNAT) component of the GNU GCC has been ported to MacOS X/Darwin using the Darwin GCC3 source tree, as well as FSF gcc3 source tree.

Alan and Andrew Reynolds share primary responsibility for the compiler port. The current state of the port is documented and made available for download here.

Back to Top

------------------------------------------------

Debuggers

Stephen Bespalko has enhanced Apple's Darwin/MacOS version of gdb with Ada Language support. In addition, Andrew Reynolds has ported the GNU Visual Debugger (GVD) (along with gtk+). In addition Apples IDE Project Builder has been enhanced to support Ada by a combination of work by Apples Engineers, Stephen Bespalko, and Jim Hopper. Support for the debugger (excluding the Project Builder support) is documented and made available for download. Project Builder support is supplied as part of a larger integration of Ada with PB and is discussed further in Tools section.

Download the debuggers here.

Back to Top

------------------------------------------------

Tools

Tools support is currenlty documented On the Tools Page. This support includes integration with existing tools like Project Builder and Interface Builder, as well as custom tools developed for MacOS X such as Jim Hoppers Lookup, and Reformat GUI. Jim Hopper has primary responsibility for this area of the project.

Back to Top

------------------------------------------------

Bindings

Ada bindings for a number of technologies are in the works. The current effort is aimed at developing complete bindings for the MacOS development frameworks. Significant portions of this framework are available to Ada via the bindings created by Jim Hopper, Al and Andrew Reynolds, as well as Pascal Pignard. So far only non-Coco interfaces are available.

Jim Hopper has primary responsibility for this part of the project and the bindings are available as a MacOS X installer here. Other bindings such as TASH and NCurses are available here as well.

Back to Top

------------------------------------------------

Ported Libraries

Libraries that are generally useful are available On the Libraries Page. These libraries are OS X ports, as well as original libraries. Currently the following libraries have been ported successfully:

Booch Components

High-level bindings to OS X controls

Back to Top

------------------------------------------------

Sample Code

Sample Code to use the OS X bindings is available on the Sample Code Page. This sample code is composed of direct translations of Apples sample code from c to Ada, as well as more elaborate porting efforts to make better use of Ada and OS X Carbon.

A good example of this is the buffered window sample code which was updated to use Ada tasking to simplify the code that originally used lower-level pthreads calls. Jim Hopper, Andrew Reynolds, and Pascal Pignard produced this sample code from Apples Carbon Sample Code.

-Back to Top

------------------------------------------------

Tutorials

Carbon/Project Builder Tutorial #1,

Note, the new carbon bindings have a new script from Gary Meyer. It makes the convert Ada Style unnecesary and running this script appears to cause problems. At this time we recommend that the Convert Ada Script not be run. Just skip over this step in the tutorial and continue. A new version of the tutorial for the current bindings is in the works.

     
     Read in HTML
     Download PDF and Source

-Back to Top



| What's New | Classic MacOS | MacOS X | FAQ | Contact | Home |
Compilers
Debuggers
Tools
Bindings
Ported Libraries
Sample Code
Tutorials