OVERVIEW: This adatcl package provides access to tcl thru Ada. It is possible to run tcl programs and to write Ada procedures that define new tcl procedures using tcl_createcmd. The program tcltest.a demonstrates use of most tcl features and implements some of the example commands from section III of the draft of the tcl book. I assume that the user is familiar both with Ada and with Tcl, hence, I assume that the example program, tcltest.a, provides an adequate base level of usage documentation. There are of course a variety of caveats and limits on all this. In particular, you should be warned that this package seriously abuses C-Ada interoperability. Specifically: 1. This package is heavily dependent on the features of the Verdix/Sunada compiler. In particular: a. It uses the c_strings package b. It used pragma interface and pragma interface name to access C library routines (see the adatcl_unix package). 2. This package makes many assumptions about compatability between Ada and C: a. It assumes that top level procedures in packages can be called from C code correctly when passed integers and pointers. This is the hidden assumption behind the ability to define new commands from Ada procedures. b. It uses unchecked_conversion and unchecked deallocation. 3. In an attempt to provide correct operation under Ada concurrent execution, all calls to C code are protected by semaphores. As noted in the makescript file, if you intend to use ada tasks, then you will want to load the ada-thread save malloc provided as part of SunAda. 4. This package avoids the use of exceptions. Its style could be improved significantly if that were changed. 5. The tcltest.a program exercises most of the features of Tcl. The file tested has an exclamation point next to features for which no current exercise exists in tcltest.a INSTALLATION: The script named makescript shows how to compile and test the adatcl package using the tcltest program with test.tcl as input. LOCATION: The README is available via WWW as: http://www.cs.colorado.edu/homes/arcadia/public_html/adatcl.html The source for adatcl may be obtained via WWW or directly through anonymous ftp as: ftp://ftp.cs.colorado.edu/pub/cs/distribs/arcadia/adatcl7.3.tar.Z The source should also be available from the tcl archive at harbor.ecn.purdue.edu either in the incoming directory or in the regular tcl directory. The version number indicates the highest known version of tcl to which it is equivalent. Address questions and comments to Dennis Heimbigner Computer Science Dept. University of Colorado Boulder, CO 80309-0430 (303-492-6643) (dennis@cs.colorado.edu)