Idenity Graphic
What's New
Classic MacOS
MacOS X
FAQ
Contact

Bindings

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

Carbon

These bindings were done starting with the Pascal headers from the MacOS X universal headers 1.5, which were translated from Pascal to Ada95 using a tool called p2ada (see tools page). These bindings were then hand massaged to fix anomalies in the p2ada translation. Some convenience routines were added to make the bindings more Ada friendly. A prime example to this is the pstrings package that was contributed by John Matthews from the old MachTen bindings to MacOS 7-9; this package makes creating and manipulating the Mac str255 data structure much more convenient.

These bindings are being tested the only way they can be: by building carbon apps with them. We are starting with the sample code available on the Apple Developer site; many of these examples have been carbonized. We build the C versions to see how they work, then translate them to Ada and debug both the samples and the bindings used by the sample as we go. In addition to simple translation, in some of the samples carbonization is improved to use more complete carbon implementations (see the NewGWorld sample). Some original Tools for working with Ada are also provided in the Tools Section of this web site.

So these bindings are a work in process. We view the testing of these bindings as a community effort. We will post new versions of bindings and samples over time, We hope others will contribute their efforts as well. To coordinate these efforts please inform the mailing list or if you are not on the list, send updates, questions, suggestions etc to Jim Hopper. He will review any contributions and update the official bindings released here as appropriate.

Sorry, this is a quick and dirty introduction to the bindings, and I hope to do more later, but for now this will have to do. Be sure and send questions/comments/corrections and new sample code in as they come up.

The following people have contributed to these bindings

Jim Hopper
Andrew Reynolds
Garry Meyer
Phillip Gonia
Pascal Pignard
John B. Matthews
(if I have forgotten anyone please remind me)

These bindings are provided as a MacOS X installer package. Included in this package are the files required for Project Builder integration and sample code. The installer will place the bindings at /usr/local/Bindings/Frameworks, and will automatically compile the bindings as part of the install. Note this only works if you have preinstalled the compiler package.

For help using project builder see the tutorial available as part of the Project Builder Scripts available on the tools page. It is an excellent explanation of how to create a basic Project Builder Ada Application.

Back to Top

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

NCurses Bindings

OS X 10.2 ships with NCurses, and the Curses bindings have been added to the carbon bindings package. They are installed at /usr/local/Bindings/ncurses.

The source is included in the NCurses project in Apples Darwin CVS server. I have converted the sources to work with Project builder as well so you can download the ncurses project from the darwin CVS server and build using make, or you can download the sources as a PB project. Building this project requires OS X 10.2, the 10.2 compiler, and the Carbon Bindings.

Back to Top

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

TASH (Tcl/Tk) Bindings

TBD

Tash Tcl/Tk bindings are here configured for use with the Aqua port of Tk.

The Bindings are installed in /usr/local/Bindings/Tash

Sample Applications using these bindings are placed in /Developer/Examples/Ada/Tash

Download the Tash Tcl/Tk Bindings Installer

Back to Top

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

Gtk Ada Bindings

See the GVD documentation on the debugger page.

Back to Top

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

X11/Motif Ada Bindings

X11/Motif bindings are here. The Bindings are installed in /usr/local/Bindings/X11

Sample Applications using these bindings are placed in /Developer/Examples/Ada/X11

The bindings themselves are in the same folder with the sample apps as a Project Builder

project. Build the Deployment Style will install the compiled bindings in /usr/local/Bindings/X11

Download the X11/Motif Bindings Installer

Back to Top

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



| What's New | Classic MacOS | MacOS X | FAQ | Contact | Home |
Carbon
NCurses
TASH (Tcl/Tk)
Gtk Ada
X11/Motif Ada Bindings