AdaIC Available Ada Bindings Report - 1995
SECTION 4: Resources Available from the AdaIC and Other Internet Hosts
In This Section: AdaJava Ada/Operating System Interface (OSI) Ada Decimal Arithmetic and Representations (ADAR) Ada Distributed Interactive Simulation (ADIS) AdaTCL Adobe Font Metrics cbind Customer Information Control System (CICS) Distributed Computing Environment (DCE) Generic Package of Elementary Functions (GPEF) GPEF - Generic Math Functions Computer Graphics/Graphical Kernel System Information Resource Dictionary System (IRDS) Microsoft Windows - Win32Ada Binding MIL-STD 1553 Data Bus - Generic Avionics Data Bus Tool Kit (GADBTK) OS2 - Thin Ada 95 Bindings to the OS/2 API Package CGI Paradox Portable Common Tool Environment (PCTE) POSIX - Ada 83 POSIX - Ada 95 POSIX Ada Run-Time System Libraries (PART) SQL SQL - SAMeDL Development Environment TCP/IP - Secure File Transfer Program (SFTP) Transportable Applications Enviornment (TAE) Unix - Paradise XModem and Kermit Network Protocols X-Windows - Motif X-Windows- X, Xlib, Xt, Motif X-Windows - Ada/X Toolkit
Introduction
The AdaIC provides bindings products at no charge, as-is, and without support. The same files, however, may be available at other repositories - which may offer a variety of products or services, sometimes fee-based. A number of other repositories are described in Appendix B.
AdaJava
[http://www.inmet.com/javadir/download/api/]
Ada/Operating System Interface (OSI)
[http://archive.adaic.com/tools/bindings/ADA-OSI]
Ada Decimal Arithmetic and Representations (ADAR) This is the source code for Ada Decimal Arithmetic and Representations (ADAR), Version 1.0, January 1993, which is part of the binding project of the Ada Joint Program Office's Ada Technology Insertion Program (ATIP). The ADAR packages were developed to provide a common approach for decimal arithmetic and Ada 83. The ADAR package set consists of two related facilities for decimal arithmetic, one based on discriminant records, and the other on generics, to provide decimal computation and interoperable representations of decimal quantities. The ADAR packages include support for decimal data with up to 18 digits of precision, arithmetic operations with programmer control over rounding versus truncation, conversions to and from common external representations, and formatted output of decimal values based on COBOL's "picture" clauses. [http://archive.adaic.com/tools/bindings/ADAR] Ada Distributed Interactive Simulation (ADIS) The DoD and the private sector are moving rapidly to new standards in inter-simulation communication - one of which is the Distributed Interactive Simulation (DIS) protocol. There is currently no Ada binding to that standard, and the primary purpose of the ADIS project is the creation of Ada interface bindings to allow an Ada simulation application to use the ADIS protocols. DIS is being used for several major DoD research projects. The Highly Dynamic Vehicle Simulation (HYDY) program is one such project. It is an Advanced Research Projects Agency (ARPA) funded effort to use DIS to connect geographically separated simulators and instrumented aircraft together in a seamless war-gaming environment. The DIS protocol is an object-based system where each entity sends messages that contain its state data and current operations to the other entities. The communications media for transmission of the messages is not defined in the DIS standard. The HYDY program is using Ethernet and wide-area-network modems and bridges as the physical layer. The ADIS project will create an Ada gateway interface, tools, and definitions for development of DIS projects in Ada; the project will also create government-owned diagnostic and monitor software to view an entire war-gaming exercise. [http://archive.adaic.com/tools/bindings/ADIS] AdaTCL 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 demonstrates use of most tcl features and implements some of the example commands from section III of the draft of the tcl book. [ftp://ftp.cs.colorado.edu/pub/cs/distribs/arcadia/adatcl.txt] Adobe Font Metrics This set of packages provides an Ada binding to Adobe Font Metrics. They utilize an AFM parser written in C. Together these files provide the functionality to parse Adobe Font Metrics files and store the information in predefined data structures. It is intended to work with an application program that needs font metric information. The program can be used as is by making a procedure call to parse an AFM file and have the data stored, or an application developer may wish to customize the code. This program is based on the document "Adobe Font Metrics Files, Specification Version 2.0". AFM files are separated into distinct sections of different data. Because of this, the parseAFM program can parse a specified file to only save certain sections of information based on the application's needs. A record containing the requested information will be returned to the application. AFM files are divided into five sections of data: 1) The Global Font Information 2) The Character Metrics Information 3) The Track Kerning Data 4) The Pair-Wise Kerning Data 5) The Composite Character Data Basically, the application can request any of these sections independent of what other sections are requested. In addition, in recognizing that many applications will want ONLY the x-width of characters and not all of the other character metrics information, there is a way to receive only the width information so as not to pay the storage cost for the unwanted data. An application should never request both the "quick and dirty" char metrics (widths only) and the Character Metrics Information since the Character Metrics Information will contain all of the character widths as well. [http://archive.adaic.com/tools/bindings/ADOBE] cbind - A translator for "thin" Ada bindings to C This tool is designed to aid in the creation of Ada bindings to C. The code is provided "as is" without any warranty whatsoever. The code is published to the public domain as free software. The developer does not intend to imply that the bindings generated by this translator will be complete. It may or may not be useful as an aid to generating bindings.[On the World Wide Web:http://www.cdrom.com/pub/ada/swtools/cbind; or ftp://rational.com/public/tools/cbind] Customer Information Control System (CICS) The Customer Information Control System (CICS) is an IBM transation-processing system. This is an interface that binds Ada to the IBM CICS transaction-oriented applications. In addition, it provides SQL for future database applications to allow migration to Ada while retaining massive historical databases and existing functional software. [http://archive.adaic.com/tools/bindings/CICS] Distributed Computing Environment (DCE) The Distributed Computing Environment (DCE) is a standard of the Open Systems Foundation (OSF). It is an integrated set of services that provides the foundation for distributed computing in a heterogeneous computing environment. [http://archive.adaic.com/tools/bindings/DCE] Generic Package of Elementary Functions (GPEF) - Generic Elementary Math Functions These generic Ada packages provide a set of mathematical functions that conform to the SIGAda Numerics Working Group's proposed standard, which is a proposed secondary ISO standard. The package as specified consists of 29 functions, which can be classified into three families: exponential, trigonometric, and hyperbolic. The exponential family consists of 5 functions: Sqrt(x), Exp(x), X**Y, Log(X) and Log(x,Base). The trigonometric family consists of 16 functions: the four usual trig functions Sin(x), Cos(x), Tan(x), and Cot(x) and the four inverses Arcsin(x), Arccos(x), Arctan(y,x), and Arccot(x,y) constitute 8 of the 16. These 8 functions are approximations to the corresponding mathematical functions, with 2pi being the period. The proposed ISO standard also requires 8 other functions that allow the user to specify a period (e.g., 360.0). The calling sequences for the other 8 are Sin(x,cycle), Cos(x, cycle), and Arccot(y,x,cycle). Finally, the hyperbolic family consists of 8 functions: the commonly used Sinh(x), Cosh(x), Tanh(x), and Coth(x) and the corresponding inverses Arcsinh(x), Arccosh(x), Arctanh(x), and Arccoth(x). The code has comments defining usage and implementation details, plus an informative README file. Also included are test packages and drivers to test each of the functions. This product was developed as part of the Software Technology for Adaptable, Reliable Systems (STARS) program, sponsored by the Advanced Research Projects Agency (ARPA). [http://archive.adaic.com/tools/bindings/GPEF] GPEF - Generic Math Functions These Ada math packages implement the following generic packages specified by the ISO Numerics Rapporteur Group: generic_elementary_functions, generic_primitive_functions, generic_algebraic_functions, and math_constants. As with most software, this carries no guarantees. Single precision and double precision have been pretty well tested on an Apollo (Alsys) and a VAX (DEC). Longest_Float precision is mostly finished, but rough. This will also compile on VAX/Unix (Verdix), Apollo/SR10.2 (Verdix). This product was developed as part of the Software Technology for Adaptable, Reliable Systems (STARS) program, sponsored by the Advanced Research Projects Agency (ARPA). [http://archive.adaic.com/tools/bindings/GPEF/gmf-bindings] Computer Graphics/Graphical Kernel System This Ada software bundle implements the Graphical Kernel System (GKS), an internationally accepted standard for computer graphics recognized by the American National Standards Institute (ANSI) and the International Standardization Organization (ISO). The Graphical Kernel System provides an application programmer's interface, defining graphics functions at the logical device level rather than the hardware device level. Using a GKS implementation, an applications programmer can write graphics programs without having to learn the scheme for describing graphics on a particular hardware device. This GKS interface allows the application programmer to make Ada calls to a wide variety of graphics and plotting routines, and supports several types of graphics terminals. This product was developed as part of the Software Technology for Adaptable, Reliable Systems (STARS) program, sponsored by the Advanced Research Projects Agency (ARPA). [http://archive.adaic.com/tools/bindings/GKS] Information Resource Dictionary System (IRDS) This document is an editor's draft of the Information Resource Dictionary System (IRDS) Services Interface, dated 3 July 1992, ISO/IEC 10728: 1993 (E), Draft International Standard. It is for the purpose of review by participants in the SC21 editing committee. This draft standard defines an interface to describe and control an enterprise's information resources. IRDS interfaces to an SQL type of database using services in the form of function and procedure calls. A draft Ada binding to IRDS has been submitted to the ISO IRDS Rapporteur Group as a proposed Annex D to ISO/IEC 10728. It is currently a working draft. [archive.adaic.com/tools/bindings/IRDS] Microsoft Windows - Win32Ada Binding Win32Ada is a complete thin binding to Win32, the 32-bit interface to Microsoft Windows 95 And Microsoft Windows NT. (A subset of Win32 (Win32S) is supported on Windows 3.1.) Win32Ada's capabilities include: creation of processes, windows, and menus; graphics, keyboard, and mouse control; MAPI (mail); Dynamic Data Exchange (DDE); Object Linking and Embedding (OLE), compound documents; video, sound, and multimedia; and Open Data Base Connectivity (ODBC). That is, everything that is available to a C program. At present, distribution arrangements have not yet been finalized. In the interim, those interested in obtaining copies may contact Dennis Struble at Intermetrics, Inc., for further information. Dennis Struble Intermetrics, Inc. 733 Concord Avenue Cambridge, MA 02138 tel: 617/661-1840 fax: 617/868-2843 MIL-STD 1553 Data Bus - Generic Avionics Data Bus Tool Kit (GADBTK) This is the source code for the Generic Avionics Data Bus Tool Kit (GADBTK), which is part of the Ada Joint Program Office's Ada Technology Insertion Program (ATIP) binding project. The GADBTK project is intended to provide a strong Ada software binding to the Military Standard 1553 data bus. The bus is used for time multiplex data communications between different sensor and computer subsystems on many current military platforms. The associated documentation is available through the Defense Technical Information Center (DTIC) and the National Technical Information Service (NTIS). [http://archive.adaic.com/tools/bindings/gadbtk] OS2 - Thin Ada 95 Binding to the OS/2 API The OS2 package provides thin, direct Ada 95 bindings to the most important sections of OS/2's GUI API, i.e. Win, GPI, Dev, Spl, DDF, Prf, Drg. 1.) Use the BUILD command file to compile the bindings and create the sample program (WINTEST). 2.) Note that some names and types are not exactly identical to the CAPI definitions. Declarations like "HWND hwnd", anonymous arrays as structure members, pointers etc. had to be changed. 3.) Support for other OS/2 APIs than those related to the Presentation Manager has been dropped. The bindings have been created using a customized CBIND6 and tested with GNAT 3.05 on OS/2 Warp v3. The CBIND utility can be obtained from ftp://rational.com/public/tools/cbind/, the GNAT Ada'95 compiler is at ftp://ftp.cs.nyu.edu/pub/gnat/. The base file was OS2EMX.H (part of gcc/emx), thus a copy of the GNU Library General Public License is included with the distribution archive. (A personal note: I still don't understand why all this hardcore legal stuff is necessary and why every piece of code has to include a lengthy all-capitals disclaimer message.) All kinds of feedback are appreciated. POC: Klaus A. Brunner e-mail: kbrun@ibm.net [ftp://cs.nyu.edu/pub/gnat/contrib/os2/bindings/] Package CGI "Package CGI" is an Ada 95 interface to the "Common Gateway Interface" (CGI). This package makes it easier to create Ada programs that can be invoked by World-Wide-Web (WWW) HTTP servers using the standard CGI interface. Using it, you can create Ada programs that perform queries or other processing by request from a WWW user. This package is copyright (C) 1995 David A. Wheeler (wheeler@ida.org). You are free to use it in anything you wish without restriction or payment, but please provide credit if you use this package. This Ada package provides two data access approaches from the CGI: 1.) As an associative array; simply provide the key name (as a string) and the value associated with that key will be returned. 2.) As a sequence of key-value pairs, indexed from 1 to Argument_Count. This access approach is similar to the Ada library Ada.Command_Line. The main access routines support both Ada 95 types String and Unbounded_String. [http://wuarchive.wustl.edu/languages/ada/swcomps/cgi/cgi.html] Paradox Dbms_Template represents a simple DBMS class. It is single user, but it can be extended for networks. It was created as a binding to Paradox Engine 1.0. It can serve as a binding to other DBMS's such as dBASE and Clipper by purchasing a C library for accessing other DBMS's and changing the body of Dbms_Template. This binding requires Paradox Engine and Microsoft's C library (large model). [http://archive.adaic.com/tools/bindings/paradox] Portable Common Tool Environment (PCTE) This is the Ada Portable Common Tool Environment (PCTE) binding (AdaPCTE). It provides Ada applications access to a PCTE object base as defined by the European Computer Manufacturers Association (ECMA) Ada PCTE specification (Standard ECMA-162 Ada Language Binding, December 1991). This "alpha" release provides a minimal set of interfaces to permit Ada developers to experiment with and evaluate PCTE for use in future Ada applications. It is expected that later releases will complete the binding. Since no conforming implementations of ECMA PCTE existed as defined in Standard ECMA-149, AdaPCTE ws implemented on GIE Emeraude's PCTE V12.2 Fix 7 or V12.3. Because only a subset of the ECMA PCTE Ada specification had been implemented for the 0.2 release, and because ECMA PCTE functionality differs somewhat from Emeraude PCTE functionality, the complete functionality of Emeraude PCTE is not available to Ada applications using these bindings. [http://archive.adaic.com/tools/bindings/PCTE] POSIX - Ada 83 The following statement is provided by the IEEE and governs the use of this code: These package specifications were extracted from IEEE Std 1003.5-1992, IEEE Standard for Information Technology - POSIX Ada Language Interfaces - Part 1: Binding System Application Program Interface, copyright (c) 1992 by the Institute of Electrical and Electronics Engineers, Inc. These package specifications represent only a portion of the document and are not to be interpreteted as the approved consensus standard. The IEEE Std 1003.5-1992 must be used in conjunction with these package specifications in order to claim conformance. The IEEE takes no responsibility for and will assume no liability for damages resulting from the reader's misinpretation of said information resulting from its out of context nature. To order copies of the IEEE Std 1003.5-1992, please contact the IEEE Service Center at 445 Hoes Lane, PO Box 1331, Piscataway, NJ 08855-1331; via phone at 1-800-678-IEEE, 908-981-1393; or via fax at 908-981-9667. Note that these specifications are incomplete, in that the standard identifies some declarations as implementation-defined. In addition, no package bodies are provided. This standard was developed by IEEE Working Group P1003.5. For more information on this group, contact the Chairman, James Lonjers, lonjers@vfl.paramax.com or 805/987-9457. Formal requests for interpretations of this standard should be addressed to the IEEE, as specified in the document. An e-mail list discussing ongoing POSIX/Ada binding work is available as "posix-ada@verdix.com". Send e-mail to "posixadarequest@verdix.com" to be included on the list. Current work in IEEE P1003.5 consists of the Ada Binding to POSIX Real-Time Extensions (IEEE Project P1003.20) and current interpretations of IEEE Std 1003.5-1992. [http://archive.adaic.com/tools/bindings/POSIX/ada83/] POSIX - Ada 95 These are POSIX .5 library specs. The library is under development, and this is a work-in-progress version release. A work-in-progress implementation of the package bodies should also be available shortly. (For more information via the World Wide Web, look into the PART Home page: "http://www.cs.fsu.edu/~doh/") For questions and suggestions, e-mail can be sent to part@ada.cs.fsu.edu. [http://archive.adaic.com/tools/bindings/POSIX/ada95/] POSIX Ada Run-Time System Libraries (PART) This is a pointer file to the POSIX Ada Run-Time System Libraries (PART), which contains code from one of the projects supported by the Ada Joint Program Office's FY91 Ada Technology Insertion Program (ATIP). PART is available to the public from Florida State University (FSU) for non-commercial use. See copyright note near end. PART can be obtained by anonymous FTP from FSU's ftp server (ftp.cs.fsu.edu). The release there is version 1.2 of the POSIX Ada Run-Time System Library (PART) using a CARTS interface [3]. It is implemented over the POSIX 1003.4a Threads Extension (Pthreads) [1], and requires access to an interface compliant with that standard. The purpose of this release of PART is to demonstrate the feasibility of implementing an Ada '83 run-time system over POSIX threads, and disclose the full details of one such implementation. By mapping Ada tasks onto POSIX threads, this approach should enhance the portability of Ada runtime systems and provide a platform for exploiting shared-memory multiprocessors. [ftp://ftp.cs.fsu.edu/pub/PART] SQL - A Prototype Binding of ANSI-Standard SQL to Ada Supporting the SAME Methodology This is the final release of the Computer Software Configuration Item (CSCI) identified as the IBM STARS Prototype Binding of Ansi-Standard SQL to Ada Supporting the SQL Ada Module Extensions (SAME) Methodology. This software was developed for the DoD's Software Technology for Adaptable, Reliable Systems (STARS) Program. The primary purpose of the Binding of ANSI-Standard SQL to Ada is to provide access to relational data bases that support SQL from within an Ada program. The secondary purpose of this project is to provide this access by implementing the SAME approach to data base interface as described in Guidelines for Use of the SAME, Technical Report CMU/SEI-89-TR-16. SAME is a specialization of the modular approach for implementing an interface between a programming language (in this case Ada) and a DBMS whose data manipulation language is SQL. SAME is an extension of the existing SQL module language standard meant to maximize Ada language capabilities. SAME provides an abstraction/mapping between an Ada program's objects and the weakly typed SQL concrete types through a layer that exists between the application program and the actual interface to the data base. To use SAME without any automated support would be a time consuming task. This project will provide such automated support. [http://archive.adaic.com/tools/bindings/SQL] SQL - SAMeDL Development Environment This is a release of the Intermetrics SAMeDL Development Environment. This software has been provided as part of a research and development effort under the Ada Technology Insertion Program (ATIP) in an effort to investigate and promote Ada/SQL interfacing technology, namely SAMeDL, within the Ada community. Although all attempts have been made to make this software as robust as possible, it is not of production quality. Deficiencies and problems are inherent and should not be used as a means for negatively judging the merits of SAMeDL. The challenges pertaining to the use of Ada and SQL in a well-engineered information system led to the formation of the SQL Ada Module Extension Design Committee (SAME-DC) at the Software Engineering Institute (SEI). The committee developed the SQL Ada Module Extension (SAME) Methodology to support and extend the modular approach to using Ada and SQL in database applications. The language which is used to implement SAME is the SQL Ada Module Description Language, or SAMeDL. Using the SAME methodology requires that SQL statements be separated from the Ada application code, and encapsulated in separate modules. The SQL statements are not embedded in the Ada packages, thus isolating the Ada application from the DBMS design and implementation. SAMeDL is designed to facilitate the construction of Ada database applications that use the SAME methodology. [http://archive.adaic.com/tools/bindings/SAMeDL/] TCP/IP - Secure File Transfer Program (SFTP) The Secure File Transfer Program provides a means of transferring sensitive information from one computer system to another. This system implements Transmission Control Protocol (TCP) and conforms to RFC:793. TCP provides a reliable communication between pairs of processes in logically distinct hosts on networks and sets of interconnected networks. The TCP resides in the transport layer of the DoD Internet Model. The system encapsulates messages received from the utility layer protocols, which reside directly above, and passes the packet to the Internet layer (communicates with the Internet Protocol (IP)). The TCP supports the following functions: connection-oriented, reliable data transfer, ordered data transfer delivery, full-duplex, and flow control. This product was developed as part of the Software Technology for Adaptable, Reliable Systems (STARS) program, sponsored by the Advanced Research Projects Agency (ARPA). [http://archive.adaic.com/tools/SFTP/] Transportable Applications Enviornment (TAE) The Transportable Applications Environment (TAE) Project is a state-of-the-art user interface development and management system, that provides services and tools for developing and managing graphically-oriented user interfaces, as well as providing common application executive services. The main component of TAE Plus is a WYSIWYG user interface designer's Workbench that allows an application developer to interactively construct a graphical user interface (GUI) by arranging and manipulating TAE Plus "interaction objects". These interaction objects include both user entry items (e.g., radio buttons, text keyin, icon buttons) and real-time dynamic data objects (e.g., dials, sliders, gauges, and discrete picture sequences). The Workbench also provides the capability to dynamically define "connections" between interaction objects, as well as to rehearse the designed GUI dialogue. The TAE Plus Workbench is a tool for building user interfaces. It is designed for both non-programmers and programmers. Knowledge of OSF/Motif or the X Window System is not necessary. New TAE Plus users quickly master the intuitive operation of the Workbench and can build working interfaces in a matter of hours - often without consulting manuals. As an aid to bridging the gap between the development and runtime environments, the Workbench provides the option of generating a skeleton source code program (in C, ANSI C, C++, and Ada) which fully displays and manages the designed GUI. This Workbench-generated code includes the calls to the TAE Plus runtime services and the Window Programming Tools (WPTs). The separation of the user interface from the application code allows changes to be made easily to an application's GUI without recompiling or relinking the software, and also hides the complexities of the underlying X and Motif windowing services from the application. [http://groucho.gsfc.nasa.gov/Code_520/Code_522/Projects/TAE/Bulletin/TAE_Bulletin3.htm] Unix - Paradise Paradise is a set of Ada packages intended to provide an interface to the Unix operating system, and more specifically to the communication routines, that are accessed via file descriptors. It lets the Ada programmer use files, pipes, and sockets, as well as signals, error codes, environment variables, etc., using an interface that looks as much as possible like the C interface. Paradise supports multi-tasking: any input or output is blocking for the calling task only, and not for the entire process. Paradise is intended to be system-independant and compiler-independant; so far, it works on four environments: - SunOS 4.1 (Sparc) and SunAda (Verdix 6.1) compiler - SunOS 4.1 (Sparc) and TeleSoft 4.1.1 compiler - HP-UX (HP9000/700) and HP-Ada (Alsys) compiler - HP-UX (HP9000/700) and Verdix 6.3d compiler It is known not to work well on SunOS/Alsys, because of problems on signal handlers; For people who would like to port it to other environments, information on portability is displayed inside the code. A programmer's guide should appear in future versions. Send all comments, bug reports, patches to "paradise@cenatls.cena.dgac.fr" (Nicolas Courtel). [http://archive.adaic.com/tools/bindings/paradise/] Ada Binding to XModem and Kermit Network Protocols This is a set of Ada packages that implement the file transfer protocols only (for X_Modem and Kermit protocols). The documentation is complete and the implementation encourages reuse of this tool in a variety of ways.hpot [http://archive.adaic.com/tools/bindings/xmodem-kermit/] X-Windows - Motif These are the BCA/STARS Motif Ada bindings. Motif is an X-Windows based toolkit for user interface development. The BCA Motif Ada bindings are a binding to (not an implementation of): - the Motif widget (user interface object) set, and - a subset of the Motif functions You must have the Motif object code libraries to use this software. The bindings were developed using Motif version 1.0.1 and have not been tested under 1.1. [http://archive.adaic.com/tools/bindings/MOTIF/] X-Windows - X, Xlib, Xt, Motif This is a complete set of Ada Xlib/Xt/Motif bindings, and a set of examples. The Ada Xlib/Xt/Motif bindings require the existance of the C Xlib/Xt/Motif bindings. (Ie: the include files and the libraries are available). The actual bindings are pure Ada code, produced by tools written in Ada and C, with all the tools etc. in the tar file. The C tools are compiled using your system's Xlib, Xt, and Xm include files, and they use the information found there to produce Ada representation clauses, constants, etc. that exactly match the C representations of the structures, etc. This is how this kit can reliably generate bindings for a range of architectures, regardless of word-size, alignment-rules, etc. These bindings are for X11R4/Motif 1.1, X11R5/Motif 1.2 and DECMotif Extensions. These bindings are meant for DEC Ada 3.0 and later on OSF/1 and OpenVMS. They should work, or be easily modified to work, on many other Ada compilers and platforms. [http://archive.adaic.com/tools/bindings/Xlib-Xt-Xm-bindings/] X-Windows - Ada/X Toolkit This software package provides an Ada programmatic interface to a set of reusable user interface abstractions known as widgets. The software provides the full functionality of the M.I.T X Consortium Version 11 Release 4 X Window System. The software consists of three components: an Ada binding to the Xlib layer, an Ada implementation of the Xt Intrinsics layer, and an Ada widget library. The Ada binding to the Xlib layer upgrades the STARS Foundations Ada Xlib binding, and provides a protocol interface with a set of graphics drawing primitives. The Xt Intrinsics layer provides a policy-free mechanism for creating and managing user interface objects. User interface objects are contained in the widget library, which consists of a small set of commonly used user interface abstractions such as scroll bars and command buttons. This product was developed as part of the Software Technology for Adaptable, Reliable Systems (STARS) program, sponsored by the Advanced Research Projects Agency (ARPA). [http://archive.adaic.com/tools/bindings/X-toolkit/]
The ADAR packages include support for decimal data with up to 18 digits of precision, arithmetic
operations with programmer control over rounding versus truncation, conversions to and from common external representations, and formatted output of decimal values based on COBOL's "picture" clauses.
[http://archive.adaic.com/tools/bindings/ADAR]
Ada Distributed Interactive Simulation (ADIS) The DoD and the private sector are moving rapidly to new standards in inter-simulation communication - one of which is the Distributed Interactive Simulation (DIS) protocol. There is currently no Ada binding to that standard, and the primary purpose of the ADIS project is the creation of Ada interface bindings to allow an Ada simulation application to use the ADIS protocols. DIS is being used for several major DoD research projects. The Highly Dynamic Vehicle Simulation (HYDY) program is one such project. It is an Advanced Research Projects Agency (ARPA) funded effort to use DIS to connect geographically separated simulators and instrumented aircraft together in a seamless war-gaming environment. The DIS protocol is an object-based system where each entity sends messages that contain its state data and current operations to the other entities. The communications media for transmission of the messages is not defined in the DIS standard. The HYDY program is using Ethernet and wide-area-network modems and bridges as the physical layer. The ADIS project will create an Ada gateway interface, tools, and definitions for development of DIS projects in Ada; the project will also create government-owned diagnostic and monitor software to view an entire war-gaming exercise. [http://archive.adaic.com/tools/bindings/ADIS] AdaTCL 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 demonstrates use of most tcl features and implements some of the example commands from section III of the draft of the tcl book. [ftp://ftp.cs.colorado.edu/pub/cs/distribs/arcadia/adatcl.txt] Adobe Font Metrics This set of packages provides an Ada binding to Adobe Font Metrics. They utilize an AFM parser written in C. Together these files provide the functionality to parse Adobe Font Metrics files and store the information in predefined data structures. It is intended to work with an application program that needs font metric information. The program can be used as is by making a procedure call to parse an AFM file and have the data stored, or an application developer may wish to customize the code. This program is based on the document "Adobe Font Metrics Files, Specification Version 2.0". AFM files are separated into distinct sections of different data. Because of this, the parseAFM program can parse a specified file to only save certain sections of information based on the application's needs. A record containing the requested information will be returned to the application. AFM files are divided into five sections of data: 1) The Global Font Information 2) The Character Metrics Information 3) The Track Kerning Data 4) The Pair-Wise Kerning Data 5) The Composite Character Data Basically, the application can request any of these sections independent of what other sections are requested. In addition, in recognizing that many applications will want ONLY the x-width of characters and not all of the other character metrics information, there is a way to receive only the width information so as not to pay the storage cost for the unwanted data. An application should never request both the "quick and dirty" char metrics (widths only) and the Character Metrics Information since the Character Metrics Information will contain all of the character widths as well. [http://archive.adaic.com/tools/bindings/ADOBE] cbind - A translator for "thin" Ada bindings to C This tool is designed to aid in the creation of Ada bindings to C. The code is provided "as is" without any warranty whatsoever. The code is published to the public domain as free software. The developer does not intend to imply that the bindings generated by this translator will be complete. It may or may not be useful as an aid to generating bindings.[On the World Wide Web:http://www.cdrom.com/pub/ada/swtools/cbind; or ftp://rational.com/public/tools/cbind] Customer Information Control System (CICS) The Customer Information Control System (CICS) is an IBM transation-processing system. This is an interface that binds Ada to the IBM CICS transaction-oriented applications. In addition, it provides SQL for future database applications to allow migration to Ada while retaining massive historical databases and existing functional software. [http://archive.adaic.com/tools/bindings/CICS] Distributed Computing Environment (DCE) The Distributed Computing Environment (DCE) is a standard of the Open Systems Foundation (OSF). It is an integrated set of services that provides the foundation for distributed computing in a heterogeneous computing environment. [http://archive.adaic.com/tools/bindings/DCE] Generic Package of Elementary Functions (GPEF) - Generic Elementary Math Functions These generic Ada packages provide a set of mathematical functions that conform to the SIGAda Numerics Working Group's proposed standard, which is a proposed secondary ISO standard. The package as specified consists of 29 functions, which can be classified into three families: exponential, trigonometric, and hyperbolic. The exponential family consists of 5 functions: Sqrt(x), Exp(x), X**Y, Log(X) and Log(x,Base). The trigonometric family consists of 16 functions: the four usual trig functions Sin(x), Cos(x), Tan(x), and Cot(x) and the four inverses Arcsin(x), Arccos(x), Arctan(y,x), and Arccot(x,y) constitute 8 of the 16. These 8 functions are approximations to the corresponding mathematical functions, with 2pi being the period. The proposed ISO standard also requires 8 other functions that allow the user to specify a period (e.g., 360.0). The calling sequences for the other 8 are Sin(x,cycle), Cos(x, cycle), and Arccot(y,x,cycle). Finally, the hyperbolic family consists of 8 functions: the commonly used Sinh(x), Cosh(x), Tanh(x), and Coth(x) and the corresponding inverses Arcsinh(x), Arccosh(x), Arctanh(x), and Arccoth(x). The code has comments defining usage and implementation details, plus an informative README file. Also included are test packages and drivers to test each of the functions. This product was developed as part of the Software Technology for Adaptable, Reliable Systems (STARS) program, sponsored by the Advanced Research Projects Agency (ARPA). [http://archive.adaic.com/tools/bindings/GPEF] GPEF - Generic Math Functions These Ada math packages implement the following generic packages specified by the ISO Numerics Rapporteur Group: generic_elementary_functions, generic_primitive_functions, generic_algebraic_functions, and math_constants. As with most software, this carries no guarantees. Single precision and double precision have been pretty well tested on an Apollo (Alsys) and a VAX (DEC). Longest_Float precision is mostly finished, but rough. This will also compile on VAX/Unix (Verdix), Apollo/SR10.2 (Verdix). This product was developed as part of the Software Technology for Adaptable, Reliable Systems (STARS) program, sponsored by the Advanced Research Projects Agency (ARPA). [http://archive.adaic.com/tools/bindings/GPEF/gmf-bindings] Computer Graphics/Graphical Kernel System This Ada software bundle implements the Graphical Kernel System (GKS), an internationally accepted standard for computer graphics recognized by the American National Standards Institute (ANSI) and the International Standardization Organization (ISO). The Graphical Kernel System provides an application programmer's interface, defining graphics functions at the logical device level rather than the hardware device level. Using a GKS implementation, an applications programmer can write graphics programs without having to learn the scheme for describing graphics on a particular hardware device. This GKS interface allows the application programmer to make Ada calls to a wide variety of graphics and plotting routines, and supports several types of graphics terminals. This product was developed as part of the Software Technology for Adaptable, Reliable Systems (STARS) program, sponsored by the Advanced Research Projects Agency (ARPA). [http://archive.adaic.com/tools/bindings/GKS] Information Resource Dictionary System (IRDS) This document is an editor's draft of the Information Resource Dictionary System (IRDS) Services Interface, dated 3 July 1992, ISO/IEC 10728: 1993 (E), Draft International Standard. It is for the purpose of review by participants in the SC21 editing committee. This draft standard defines an interface to describe and control an enterprise's information resources. IRDS interfaces to an SQL type of database using services in the form of function and procedure calls. A draft Ada binding to IRDS has been submitted to the ISO IRDS Rapporteur Group as a proposed Annex D to ISO/IEC 10728. It is currently a working draft. [archive.adaic.com/tools/bindings/IRDS] Microsoft Windows - Win32Ada Binding Win32Ada is a complete thin binding to Win32, the 32-bit interface to Microsoft Windows 95 And Microsoft Windows NT. (A subset of Win32 (Win32S) is supported on Windows 3.1.) Win32Ada's capabilities include: creation of processes, windows, and menus; graphics, keyboard, and mouse control; MAPI (mail); Dynamic Data Exchange (DDE); Object Linking and Embedding (OLE), compound documents; video, sound, and multimedia; and Open Data Base Connectivity (ODBC). That is, everything that is available to a C program. At present, distribution arrangements have not yet been finalized. In the interim, those interested in obtaining copies may contact Dennis Struble at Intermetrics, Inc., for further information. Dennis Struble Intermetrics, Inc. 733 Concord Avenue Cambridge, MA 02138 tel: 617/661-1840 fax: 617/868-2843 MIL-STD 1553 Data Bus - Generic Avionics Data Bus Tool Kit (GADBTK) This is the source code for the Generic Avionics Data Bus Tool Kit (GADBTK), which is part of the Ada Joint Program Office's Ada Technology Insertion Program (ATIP) binding project. The GADBTK project is intended to provide a strong Ada software binding to the Military Standard 1553 data bus. The bus is used for time multiplex data communications between different sensor and computer subsystems on many current military platforms. The associated documentation is available through the Defense Technical Information Center (DTIC) and the National Technical Information Service (NTIS). [http://archive.adaic.com/tools/bindings/gadbtk] OS2 - Thin Ada 95 Binding to the OS/2 API The OS2 package provides thin, direct Ada 95 bindings to the most important sections of OS/2's GUI API, i.e. Win, GPI, Dev, Spl, DDF, Prf, Drg. 1.) Use the BUILD command file to compile the bindings and create the sample program (WINTEST). 2.) Note that some names and types are not exactly identical to the CAPI definitions. Declarations like "HWND hwnd", anonymous arrays as structure members, pointers etc. had to be changed. 3.) Support for other OS/2 APIs than those related to the Presentation Manager has been dropped. The bindings have been created using a customized CBIND6 and tested with GNAT 3.05 on OS/2 Warp v3. The CBIND utility can be obtained from ftp://rational.com/public/tools/cbind/, the GNAT Ada'95 compiler is at ftp://ftp.cs.nyu.edu/pub/gnat/. The base file was OS2EMX.H (part of gcc/emx), thus a copy of the GNU Library General Public License is included with the distribution archive. (A personal note: I still don't understand why all this hardcore legal stuff is necessary and why every piece of code has to include a lengthy all-capitals disclaimer message.) All kinds of feedback are appreciated. POC: Klaus A. Brunner e-mail: kbrun@ibm.net [ftp://cs.nyu.edu/pub/gnat/contrib/os2/bindings/] Package CGI "Package CGI" is an Ada 95 interface to the "Common Gateway Interface" (CGI). This package makes it easier to create Ada programs that can be invoked by World-Wide-Web (WWW) HTTP servers using the standard CGI interface. Using it, you can create Ada programs that perform queries or other processing by request from a WWW user. This package is copyright (C) 1995 David A. Wheeler (wheeler@ida.org). You are free to use it in anything you wish without restriction or payment, but please provide credit if you use this package. This Ada package provides two data access approaches from the CGI: 1.) As an associative array; simply provide the key name (as a string) and the value associated with that key will be returned. 2.) As a sequence of key-value pairs, indexed from 1 to Argument_Count. This access approach is similar to the Ada library Ada.Command_Line. The main access routines support both Ada 95 types String and Unbounded_String. [http://wuarchive.wustl.edu/languages/ada/swcomps/cgi/cgi.html] Paradox Dbms_Template represents a simple DBMS class. It is single user, but it can be extended for networks. It was created as a binding to Paradox Engine 1.0. It can serve as a binding to other DBMS's such as dBASE and Clipper by purchasing a C library for accessing other DBMS's and changing the body of Dbms_Template. This binding requires Paradox Engine and Microsoft's C library (large model). [http://archive.adaic.com/tools/bindings/paradox] Portable Common Tool Environment (PCTE) This is the Ada Portable Common Tool Environment (PCTE) binding (AdaPCTE). It provides Ada applications access to a PCTE object base as defined by the European Computer Manufacturers Association (ECMA) Ada PCTE specification (Standard ECMA-162 Ada Language Binding, December 1991). This "alpha" release provides a minimal set of interfaces to permit Ada developers to experiment with and evaluate PCTE for use in future Ada applications. It is expected that later releases will complete the binding. Since no conforming implementations of ECMA PCTE existed as defined in Standard ECMA-149, AdaPCTE ws implemented on GIE Emeraude's PCTE V12.2 Fix 7 or V12.3. Because only a subset of the ECMA PCTE Ada specification had been implemented for the 0.2 release, and because ECMA PCTE functionality differs somewhat from Emeraude PCTE functionality, the complete functionality of Emeraude PCTE is not available to Ada applications using these bindings. [http://archive.adaic.com/tools/bindings/PCTE] POSIX - Ada 83 The following statement is provided by the IEEE and governs the use of this code: These package specifications were extracted from IEEE Std 1003.5-1992, IEEE Standard for Information Technology - POSIX Ada Language Interfaces - Part 1: Binding System Application Program Interface, copyright (c) 1992 by the Institute of Electrical and Electronics Engineers, Inc. These package specifications represent only a portion of the document and are not to be interpreteted as the approved consensus standard. The IEEE Std 1003.5-1992 must be used in conjunction with these package specifications in order to claim conformance. The IEEE takes no responsibility for and will assume no liability for damages resulting from the reader's misinpretation of said information resulting from its out of context nature. To order copies of the IEEE Std 1003.5-1992, please contact the IEEE Service Center at 445 Hoes Lane, PO Box 1331, Piscataway, NJ 08855-1331; via phone at 1-800-678-IEEE, 908-981-1393; or via fax at 908-981-9667. Note that these specifications are incomplete, in that the standard identifies some declarations as implementation-defined. In addition, no package bodies are provided. This standard was developed by IEEE Working Group P1003.5. For more information on this group, contact the Chairman, James Lonjers, lonjers@vfl.paramax.com or 805/987-9457. Formal requests for interpretations of this standard should be addressed to the IEEE, as specified in the document. An e-mail list discussing ongoing POSIX/Ada binding work is available as "posix-ada@verdix.com". Send e-mail to "posixadarequest@verdix.com" to be included on the list. Current work in IEEE P1003.5 consists of the Ada Binding to POSIX Real-Time Extensions (IEEE Project P1003.20) and current interpretations of IEEE Std 1003.5-1992. [http://archive.adaic.com/tools/bindings/POSIX/ada83/] POSIX - Ada 95 These are POSIX .5 library specs. The library is under development, and this is a work-in-progress version release. A work-in-progress implementation of the package bodies should also be available shortly. (For more information via the World Wide Web, look into the PART Home page: "http://www.cs.fsu.edu/~doh/") For questions and suggestions, e-mail can be sent to part@ada.cs.fsu.edu. [http://archive.adaic.com/tools/bindings/POSIX/ada95/] POSIX Ada Run-Time System Libraries (PART) This is a pointer file to the POSIX Ada Run-Time System Libraries (PART), which contains code from one of the projects supported by the Ada Joint Program Office's FY91 Ada Technology Insertion Program (ATIP). PART is available to the public from Florida State University (FSU) for non-commercial use. See copyright note near end. PART can be obtained by anonymous FTP from FSU's ftp server (ftp.cs.fsu.edu). The release there is version 1.2 of the POSIX Ada Run-Time System Library (PART) using a CARTS interface [3]. It is implemented over the POSIX 1003.4a Threads Extension (Pthreads) [1], and requires access to an interface compliant with that standard. The purpose of this release of PART is to demonstrate the feasibility of implementing an Ada '83 run-time system over POSIX threads, and disclose the full details of one such implementation. By mapping Ada tasks onto POSIX threads, this approach should enhance the portability of Ada runtime systems and provide a platform for exploiting shared-memory multiprocessors. [ftp://ftp.cs.fsu.edu/pub/PART] SQL - A Prototype Binding of ANSI-Standard SQL to Ada Supporting the SAME Methodology This is the final release of the Computer Software Configuration Item (CSCI) identified as the IBM STARS Prototype Binding of Ansi-Standard SQL to Ada Supporting the SQL Ada Module Extensions (SAME) Methodology. This software was developed for the DoD's Software Technology for Adaptable, Reliable Systems (STARS) Program. The primary purpose of the Binding of ANSI-Standard SQL to Ada is to provide access to relational data bases that support SQL from within an Ada program. The secondary purpose of this project is to provide this access by implementing the SAME approach to data base interface as described in Guidelines for Use of the SAME, Technical Report CMU/SEI-89-TR-16. SAME is a specialization of the modular approach for implementing an interface between a programming language (in this case Ada) and a DBMS whose data manipulation language is SQL. SAME is an extension of the existing SQL module language standard meant to maximize Ada language capabilities. SAME provides an abstraction/mapping between an Ada program's objects and the weakly typed SQL concrete types through a layer that exists between the application program and the actual interface to the data base. To use SAME without any automated support would be a time consuming task. This project will provide such automated support. [http://archive.adaic.com/tools/bindings/SQL] SQL - SAMeDL Development Environment This is a release of the Intermetrics SAMeDL Development Environment. This software has been provided as part of a research and development effort under the Ada Technology Insertion Program (ATIP) in an effort to investigate and promote Ada/SQL interfacing technology, namely SAMeDL, within the Ada community. Although all attempts have been made to make this software as robust as possible, it is not of production quality. Deficiencies and problems are inherent and should not be used as a means for negatively judging the merits of SAMeDL. The challenges pertaining to the use of Ada and SQL in a well-engineered information system led to the formation of the SQL Ada Module Extension Design Committee (SAME-DC) at the Software Engineering Institute (SEI). The committee developed the SQL Ada Module Extension (SAME) Methodology to support and extend the modular approach to using Ada and SQL in database applications. The language which is used to implement SAME is the SQL Ada Module Description Language, or SAMeDL. Using the SAME methodology requires that SQL statements be separated from the Ada application code, and encapsulated in separate modules. The SQL statements are not embedded in the Ada packages, thus isolating the Ada application from the DBMS design and implementation. SAMeDL is designed to facilitate the construction of Ada database applications that use the SAME methodology. [http://archive.adaic.com/tools/bindings/SAMeDL/] TCP/IP - Secure File Transfer Program (SFTP) The Secure File Transfer Program provides a means of transferring sensitive information from one computer system to another. This system implements Transmission Control Protocol (TCP) and conforms to RFC:793. TCP provides a reliable communication between pairs of processes in logically distinct hosts on networks and sets of interconnected networks. The TCP resides in the transport layer of the DoD Internet Model. The system encapsulates messages received from the utility layer protocols, which reside directly above, and passes the packet to the Internet layer (communicates with the Internet Protocol (IP)). The TCP supports the following functions: connection-oriented, reliable data transfer, ordered data transfer delivery, full-duplex, and flow control. This product was developed as part of the Software Technology for Adaptable, Reliable Systems (STARS) program, sponsored by the Advanced Research Projects Agency (ARPA). [http://archive.adaic.com/tools/SFTP/] Transportable Applications Enviornment (TAE) The Transportable Applications Environment (TAE) Project is a state-of-the-art user interface development and management system, that provides services and tools for developing and managing graphically-oriented user interfaces, as well as providing common application executive services. The main component of TAE Plus is a WYSIWYG user interface designer's Workbench that allows an application developer to interactively construct a graphical user interface (GUI) by arranging and manipulating TAE Plus "interaction objects". These interaction objects include both user entry items (e.g., radio buttons, text keyin, icon buttons) and real-time dynamic data objects (e.g., dials, sliders, gauges, and discrete picture sequences). The Workbench also provides the capability to dynamically define "connections" between interaction objects, as well as to rehearse the designed GUI dialogue. The TAE Plus Workbench is a tool for building user interfaces. It is designed for both non-programmers and programmers. Knowledge of OSF/Motif or the X Window System is not necessary. New TAE Plus users quickly master the intuitive operation of the Workbench and can build working interfaces in a matter of hours - often without consulting manuals. As an aid to bridging the gap between the development and runtime environments, the Workbench provides the option of generating a skeleton source code program (in C, ANSI C, C++, and Ada) which fully displays and manages the designed GUI. This Workbench-generated code includes the calls to the TAE Plus runtime services and the Window Programming Tools (WPTs). The separation of the user interface from the application code allows changes to be made easily to an application's GUI without recompiling or relinking the software, and also hides the complexities of the underlying X and Motif windowing services from the application. [http://groucho.gsfc.nasa.gov/Code_520/Code_522/Projects/TAE/Bulletin/TAE_Bulletin3.htm] Unix - Paradise Paradise is a set of Ada packages intended to provide an interface to the Unix operating system, and more specifically to the communication routines, that are accessed via file descriptors. It lets the Ada programmer use files, pipes, and sockets, as well as signals, error codes, environment variables, etc., using an interface that looks as much as possible like the C interface. Paradise supports multi-tasking: any input or output is blocking for the calling task only, and not for the entire process. Paradise is intended to be system-independant and compiler-independant; so far, it works on four environments: - SunOS 4.1 (Sparc) and SunAda (Verdix 6.1) compiler - SunOS 4.1 (Sparc) and TeleSoft 4.1.1 compiler - HP-UX (HP9000/700) and HP-Ada (Alsys) compiler - HP-UX (HP9000/700) and Verdix 6.3d compiler It is known not to work well on SunOS/Alsys, because of problems on signal handlers; For people who would like to port it to other environments, information on portability is displayed inside the code. A programmer's guide should appear in future versions. Send all comments, bug reports, patches to "paradise@cenatls.cena.dgac.fr" (Nicolas Courtel). [http://archive.adaic.com/tools/bindings/paradise/] Ada Binding to XModem and Kermit Network Protocols This is a set of Ada packages that implement the file transfer protocols only (for X_Modem and Kermit protocols). The documentation is complete and the implementation encourages reuse of this tool in a variety of ways.hpot [http://archive.adaic.com/tools/bindings/xmodem-kermit/] X-Windows - Motif These are the BCA/STARS Motif Ada bindings. Motif is an X-Windows based toolkit for user interface development. The BCA Motif Ada bindings are a binding to (not an implementation of): - the Motif widget (user interface object) set, and - a subset of the Motif functions You must have the Motif object code libraries to use this software. The bindings were developed using Motif version 1.0.1 and have not been tested under 1.1. [http://archive.adaic.com/tools/bindings/MOTIF/] X-Windows - X, Xlib, Xt, Motif This is a complete set of Ada Xlib/Xt/Motif bindings, and a set of examples. The Ada Xlib/Xt/Motif bindings require the existance of the C Xlib/Xt/Motif bindings. (Ie: the include files and the libraries are available). The actual bindings are pure Ada code, produced by tools written in Ada and C, with all the tools etc. in the tar file. The C tools are compiled using your system's Xlib, Xt, and Xm include files, and they use the information found there to produce Ada representation clauses, constants, etc. that exactly match the C representations of the structures, etc. This is how this kit can reliably generate bindings for a range of architectures, regardless of word-size, alignment-rules, etc. These bindings are for X11R4/Motif 1.1, X11R5/Motif 1.2 and DECMotif Extensions. These bindings are meant for DEC Ada 3.0 and later on OSF/1 and OpenVMS. They should work, or be easily modified to work, on many other Ada compilers and platforms. [http://archive.adaic.com/tools/bindings/Xlib-Xt-Xm-bindings/] X-Windows - Ada/X Toolkit This software package provides an Ada programmatic interface to a set of reusable user interface abstractions known as widgets. The software provides the full functionality of the M.I.T X Consortium Version 11 Release 4 X Window System. The software consists of three components: an Ada binding to the Xlib layer, an Ada implementation of the Xt Intrinsics layer, and an Ada widget library. The Ada binding to the Xlib layer upgrades the STARS Foundations Ada Xlib binding, and provides a protocol interface with a set of graphics drawing primitives. The Xt Intrinsics layer provides a policy-free mechanism for creating and managing user interface objects. User interface objects are contained in the widget library, which consists of a small set of commonly used user interface abstractions such as scroll bars and command buttons. This product was developed as part of the Software Technology for Adaptable, Reliable Systems (STARS) program, sponsored by the Advanced Research Projects Agency (ARPA). [http://archive.adaic.com/tools/bindings/X-toolkit/]
There is currently no Ada binding to that standard, and the primary purpose of the ADIS project is the creation of Ada interface bindings to allow an Ada simulation application to use the ADIS protocols.
DIS is being used for several major DoD research projects. The Highly Dynamic Vehicle Simulation (HYDY) program is one such project. It is an Advanced Research Projects Agency (ARPA) funded effort to use DIS to connect geographically separated simulators and instrumented aircraft together in a seamless war-gaming environment.
The DIS protocol is an object-based system where each entity sends messages that contain its state data and current operations to the other entities. The communications media for transmission of the messages is not defined in the DIS standard. The HYDY program is using Ethernet and wide-area-network modems and bridges as the physical layer.
The ADIS project will create an Ada gateway interface, tools, and definitions for development of DIS projects in Ada; the project will also create government-owned diagnostic and monitor software to view an entire war-gaming exercise.
[http://archive.adaic.com/tools/bindings/ADIS]
AdaTCL 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 demonstrates use of most tcl features and implements some of the example commands from section III of the draft of the tcl book. [ftp://ftp.cs.colorado.edu/pub/cs/distribs/arcadia/adatcl.txt] Adobe Font Metrics This set of packages provides an Ada binding to Adobe Font Metrics. They utilize an AFM parser written in C. Together these files provide the functionality to parse Adobe Font Metrics files and store the information in predefined data structures. It is intended to work with an application program that needs font metric information. The program can be used as is by making a procedure call to parse an AFM file and have the data stored, or an application developer may wish to customize the code. This program is based on the document "Adobe Font Metrics Files, Specification Version 2.0". AFM files are separated into distinct sections of different data. Because of this, the parseAFM program can parse a specified file to only save certain sections of information based on the application's needs. A record containing the requested information will be returned to the application. AFM files are divided into five sections of data: 1) The Global Font Information 2) The Character Metrics Information 3) The Track Kerning Data 4) The Pair-Wise Kerning Data 5) The Composite Character Data Basically, the application can request any of these sections independent of what other sections are requested. In addition, in recognizing that many applications will want ONLY the x-width of characters and not all of the other character metrics information, there is a way to receive only the width information so as not to pay the storage cost for the unwanted data. An application should never request both the "quick and dirty" char metrics (widths only) and the Character Metrics Information since the Character Metrics Information will contain all of the character widths as well. [http://archive.adaic.com/tools/bindings/ADOBE] cbind - A translator for "thin" Ada bindings to C This tool is designed to aid in the creation of Ada bindings to C. The code is provided "as is" without any warranty whatsoever. The code is published to the public domain as free software. The developer does not intend to imply that the bindings generated by this translator will be complete. It may or may not be useful as an aid to generating bindings.[On the World Wide Web:http://www.cdrom.com/pub/ada/swtools/cbind; or ftp://rational.com/public/tools/cbind] Customer Information Control System (CICS) The Customer Information Control System (CICS) is an IBM transation-processing system. This is an interface that binds Ada to the IBM CICS transaction-oriented applications. In addition, it provides SQL for future database applications to allow migration to Ada while retaining massive historical databases and existing functional software. [http://archive.adaic.com/tools/bindings/CICS] Distributed Computing Environment (DCE) The Distributed Computing Environment (DCE) is a standard of the Open Systems Foundation (OSF). It is an integrated set of services that provides the foundation for distributed computing in a heterogeneous computing environment. [http://archive.adaic.com/tools/bindings/DCE] Generic Package of Elementary Functions (GPEF) - Generic Elementary Math Functions These generic Ada packages provide a set of mathematical functions that conform to the SIGAda Numerics Working Group's proposed standard, which is a proposed secondary ISO standard. The package as specified consists of 29 functions, which can be classified into three families: exponential, trigonometric, and hyperbolic. The exponential family consists of 5 functions: Sqrt(x), Exp(x), X**Y, Log(X) and Log(x,Base). The trigonometric family consists of 16 functions: the four usual trig functions Sin(x), Cos(x), Tan(x), and Cot(x) and the four inverses Arcsin(x), Arccos(x), Arctan(y,x), and Arccot(x,y) constitute 8 of the 16. These 8 functions are approximations to the corresponding mathematical functions, with 2pi being the period. The proposed ISO standard also requires 8 other functions that allow the user to specify a period (e.g., 360.0). The calling sequences for the other 8 are Sin(x,cycle), Cos(x, cycle), and Arccot(y,x,cycle). Finally, the hyperbolic family consists of 8 functions: the commonly used Sinh(x), Cosh(x), Tanh(x), and Coth(x) and the corresponding inverses Arcsinh(x), Arccosh(x), Arctanh(x), and Arccoth(x). The code has comments defining usage and implementation details, plus an informative README file. Also included are test packages and drivers to test each of the functions. This product was developed as part of the Software Technology for Adaptable, Reliable Systems (STARS) program, sponsored by the Advanced Research Projects Agency (ARPA). [http://archive.adaic.com/tools/bindings/GPEF] GPEF - Generic Math Functions These Ada math packages implement the following generic packages specified by the ISO Numerics Rapporteur Group: generic_elementary_functions, generic_primitive_functions, generic_algebraic_functions, and math_constants. As with most software, this carries no guarantees. Single precision and double precision have been pretty well tested on an Apollo (Alsys) and a VAX (DEC). Longest_Float precision is mostly finished, but rough. This will also compile on VAX/Unix (Verdix), Apollo/SR10.2 (Verdix). This product was developed as part of the Software Technology for Adaptable, Reliable Systems (STARS) program, sponsored by the Advanced Research Projects Agency (ARPA). [http://archive.adaic.com/tools/bindings/GPEF/gmf-bindings] Computer Graphics/Graphical Kernel System This Ada software bundle implements the Graphical Kernel System (GKS), an internationally accepted standard for computer graphics recognized by the American National Standards Institute (ANSI) and the International Standardization Organization (ISO). The Graphical Kernel System provides an application programmer's interface, defining graphics functions at the logical device level rather than the hardware device level. Using a GKS implementation, an applications programmer can write graphics programs without having to learn the scheme for describing graphics on a particular hardware device. This GKS interface allows the application programmer to make Ada calls to a wide variety of graphics and plotting routines, and supports several types of graphics terminals. This product was developed as part of the Software Technology for Adaptable, Reliable Systems (STARS) program, sponsored by the Advanced Research Projects Agency (ARPA). [http://archive.adaic.com/tools/bindings/GKS] Information Resource Dictionary System (IRDS) This document is an editor's draft of the Information Resource Dictionary System (IRDS) Services Interface, dated 3 July 1992, ISO/IEC 10728: 1993 (E), Draft International Standard. It is for the purpose of review by participants in the SC21 editing committee. This draft standard defines an interface to describe and control an enterprise's information resources. IRDS interfaces to an SQL type of database using services in the form of function and procedure calls. A draft Ada binding to IRDS has been submitted to the ISO IRDS Rapporteur Group as a proposed Annex D to ISO/IEC 10728. It is currently a working draft. [archive.adaic.com/tools/bindings/IRDS] Microsoft Windows - Win32Ada Binding Win32Ada is a complete thin binding to Win32, the 32-bit interface to Microsoft Windows 95 And Microsoft Windows NT. (A subset of Win32 (Win32S) is supported on Windows 3.1.) Win32Ada's capabilities include: creation of processes, windows, and menus; graphics, keyboard, and mouse control; MAPI (mail); Dynamic Data Exchange (DDE); Object Linking and Embedding (OLE), compound documents; video, sound, and multimedia; and Open Data Base Connectivity (ODBC). That is, everything that is available to a C program. At present, distribution arrangements have not yet been finalized. In the interim, those interested in obtaining copies may contact Dennis Struble at Intermetrics, Inc., for further information. Dennis Struble Intermetrics, Inc. 733 Concord Avenue Cambridge, MA 02138 tel: 617/661-1840 fax: 617/868-2843 MIL-STD 1553 Data Bus - Generic Avionics Data Bus Tool Kit (GADBTK) This is the source code for the Generic Avionics Data Bus Tool Kit (GADBTK), which is part of the Ada Joint Program Office's Ada Technology Insertion Program (ATIP) binding project. The GADBTK project is intended to provide a strong Ada software binding to the Military Standard 1553 data bus. The bus is used for time multiplex data communications between different sensor and computer subsystems on many current military platforms. The associated documentation is available through the Defense Technical Information Center (DTIC) and the National Technical Information Service (NTIS). [http://archive.adaic.com/tools/bindings/gadbtk] OS2 - Thin Ada 95 Binding to the OS/2 API The OS2 package provides thin, direct Ada 95 bindings to the most important sections of OS/2's GUI API, i.e. Win, GPI, Dev, Spl, DDF, Prf, Drg. 1.) Use the BUILD command file to compile the bindings and create the sample program (WINTEST). 2.) Note that some names and types are not exactly identical to the CAPI definitions. Declarations like "HWND hwnd", anonymous arrays as structure members, pointers etc. had to be changed. 3.) Support for other OS/2 APIs than those related to the Presentation Manager has been dropped. The bindings have been created using a customized CBIND6 and tested with GNAT 3.05 on OS/2 Warp v3. The CBIND utility can be obtained from ftp://rational.com/public/tools/cbind/, the GNAT Ada'95 compiler is at ftp://ftp.cs.nyu.edu/pub/gnat/. The base file was OS2EMX.H (part of gcc/emx), thus a copy of the GNU Library General Public License is included with the distribution archive. (A personal note: I still don't understand why all this hardcore legal stuff is necessary and why every piece of code has to include a lengthy all-capitals disclaimer message.) All kinds of feedback are appreciated. POC: Klaus A. Brunner e-mail: kbrun@ibm.net [ftp://cs.nyu.edu/pub/gnat/contrib/os2/bindings/] Package CGI "Package CGI" is an Ada 95 interface to the "Common Gateway Interface" (CGI). This package makes it easier to create Ada programs that can be invoked by World-Wide-Web (WWW) HTTP servers using the standard CGI interface. Using it, you can create Ada programs that perform queries or other processing by request from a WWW user. This package is copyright (C) 1995 David A. Wheeler (wheeler@ida.org). You are free to use it in anything you wish without restriction or payment, but please provide credit if you use this package. This Ada package provides two data access approaches from the CGI: 1.) As an associative array; simply provide the key name (as a string) and the value associated with that key will be returned. 2.) As a sequence of key-value pairs, indexed from 1 to Argument_Count. This access approach is similar to the Ada library Ada.Command_Line. The main access routines support both Ada 95 types String and Unbounded_String. [http://wuarchive.wustl.edu/languages/ada/swcomps/cgi/cgi.html] Paradox Dbms_Template represents a simple DBMS class. It is single user, but it can be extended for networks. It was created as a binding to Paradox Engine 1.0. It can serve as a binding to other DBMS's such as dBASE and Clipper by purchasing a C library for accessing other DBMS's and changing the body of Dbms_Template. This binding requires Paradox Engine and Microsoft's C library (large model). [http://archive.adaic.com/tools/bindings/paradox] Portable Common Tool Environment (PCTE) This is the Ada Portable Common Tool Environment (PCTE) binding (AdaPCTE). It provides Ada applications access to a PCTE object base as defined by the European Computer Manufacturers Association (ECMA) Ada PCTE specification (Standard ECMA-162 Ada Language Binding, December 1991). This "alpha" release provides a minimal set of interfaces to permit Ada developers to experiment with and evaluate PCTE for use in future Ada applications. It is expected that later releases will complete the binding. Since no conforming implementations of ECMA PCTE existed as defined in Standard ECMA-149, AdaPCTE ws implemented on GIE Emeraude's PCTE V12.2 Fix 7 or V12.3. Because only a subset of the ECMA PCTE Ada specification had been implemented for the 0.2 release, and because ECMA PCTE functionality differs somewhat from Emeraude PCTE functionality, the complete functionality of Emeraude PCTE is not available to Ada applications using these bindings. [http://archive.adaic.com/tools/bindings/PCTE] POSIX - Ada 83 The following statement is provided by the IEEE and governs the use of this code: These package specifications were extracted from IEEE Std 1003.5-1992, IEEE Standard for Information Technology - POSIX Ada Language Interfaces - Part 1: Binding System Application Program Interface, copyright (c) 1992 by the Institute of Electrical and Electronics Engineers, Inc. These package specifications represent only a portion of the document and are not to be interpreteted as the approved consensus standard. The IEEE Std 1003.5-1992 must be used in conjunction with these package specifications in order to claim conformance. The IEEE takes no responsibility for and will assume no liability for damages resulting from the reader's misinpretation of said information resulting from its out of context nature. To order copies of the IEEE Std 1003.5-1992, please contact the IEEE Service Center at 445 Hoes Lane, PO Box 1331, Piscataway, NJ 08855-1331; via phone at 1-800-678-IEEE, 908-981-1393; or via fax at 908-981-9667. Note that these specifications are incomplete, in that the standard identifies some declarations as implementation-defined. In addition, no package bodies are provided. This standard was developed by IEEE Working Group P1003.5. For more information on this group, contact the Chairman, James Lonjers, lonjers@vfl.paramax.com or 805/987-9457. Formal requests for interpretations of this standard should be addressed to the IEEE, as specified in the document. An e-mail list discussing ongoing POSIX/Ada binding work is available as "posix-ada@verdix.com". Send e-mail to "posixadarequest@verdix.com" to be included on the list. Current work in IEEE P1003.5 consists of the Ada Binding to POSIX Real-Time Extensions (IEEE Project P1003.20) and current interpretations of IEEE Std 1003.5-1992. [http://archive.adaic.com/tools/bindings/POSIX/ada83/] POSIX - Ada 95 These are POSIX .5 library specs. The library is under development, and this is a work-in-progress version release. A work-in-progress implementation of the package bodies should also be available shortly. (For more information via the World Wide Web, look into the PART Home page: "http://www.cs.fsu.edu/~doh/") For questions and suggestions, e-mail can be sent to part@ada.cs.fsu.edu. [http://archive.adaic.com/tools/bindings/POSIX/ada95/] POSIX Ada Run-Time System Libraries (PART) This is a pointer file to the POSIX Ada Run-Time System Libraries (PART), which contains code from one of the projects supported by the Ada Joint Program Office's FY91 Ada Technology Insertion Program (ATIP). PART is available to the public from Florida State University (FSU) for non-commercial use. See copyright note near end. PART can be obtained by anonymous FTP from FSU's ftp server (ftp.cs.fsu.edu). The release there is version 1.2 of the POSIX Ada Run-Time System Library (PART) using a CARTS interface [3]. It is implemented over the POSIX 1003.4a Threads Extension (Pthreads) [1], and requires access to an interface compliant with that standard. The purpose of this release of PART is to demonstrate the feasibility of implementing an Ada '83 run-time system over POSIX threads, and disclose the full details of one such implementation. By mapping Ada tasks onto POSIX threads, this approach should enhance the portability of Ada runtime systems and provide a platform for exploiting shared-memory multiprocessors. [ftp://ftp.cs.fsu.edu/pub/PART] SQL - A Prototype Binding of ANSI-Standard SQL to Ada Supporting the SAME Methodology This is the final release of the Computer Software Configuration Item (CSCI) identified as the IBM STARS Prototype Binding of Ansi-Standard SQL to Ada Supporting the SQL Ada Module Extensions (SAME) Methodology. This software was developed for the DoD's Software Technology for Adaptable, Reliable Systems (STARS) Program. The primary purpose of the Binding of ANSI-Standard SQL to Ada is to provide access to relational data bases that support SQL from within an Ada program. The secondary purpose of this project is to provide this access by implementing the SAME approach to data base interface as described in Guidelines for Use of the SAME, Technical Report CMU/SEI-89-TR-16. SAME is a specialization of the modular approach for implementing an interface between a programming language (in this case Ada) and a DBMS whose data manipulation language is SQL. SAME is an extension of the existing SQL module language standard meant to maximize Ada language capabilities. SAME provides an abstraction/mapping between an Ada program's objects and the weakly typed SQL concrete types through a layer that exists between the application program and the actual interface to the data base. To use SAME without any automated support would be a time consuming task. This project will provide such automated support. [http://archive.adaic.com/tools/bindings/SQL] SQL - SAMeDL Development Environment This is a release of the Intermetrics SAMeDL Development Environment. This software has been provided as part of a research and development effort under the Ada Technology Insertion Program (ATIP) in an effort to investigate and promote Ada/SQL interfacing technology, namely SAMeDL, within the Ada community. Although all attempts have been made to make this software as robust as possible, it is not of production quality. Deficiencies and problems are inherent and should not be used as a means for negatively judging the merits of SAMeDL. The challenges pertaining to the use of Ada and SQL in a well-engineered information system led to the formation of the SQL Ada Module Extension Design Committee (SAME-DC) at the Software Engineering Institute (SEI). The committee developed the SQL Ada Module Extension (SAME) Methodology to support and extend the modular approach to using Ada and SQL in database applications. The language which is used to implement SAME is the SQL Ada Module Description Language, or SAMeDL. Using the SAME methodology requires that SQL statements be separated from the Ada application code, and encapsulated in separate modules. The SQL statements are not embedded in the Ada packages, thus isolating the Ada application from the DBMS design and implementation. SAMeDL is designed to facilitate the construction of Ada database applications that use the SAME methodology. [http://archive.adaic.com/tools/bindings/SAMeDL/] TCP/IP - Secure File Transfer Program (SFTP) The Secure File Transfer Program provides a means of transferring sensitive information from one computer system to another. This system implements Transmission Control Protocol (TCP) and conforms to RFC:793. TCP provides a reliable communication between pairs of processes in logically distinct hosts on networks and sets of interconnected networks. The TCP resides in the transport layer of the DoD Internet Model. The system encapsulates messages received from the utility layer protocols, which reside directly above, and passes the packet to the Internet layer (communicates with the Internet Protocol (IP)). The TCP supports the following functions: connection-oriented, reliable data transfer, ordered data transfer delivery, full-duplex, and flow control. This product was developed as part of the Software Technology for Adaptable, Reliable Systems (STARS) program, sponsored by the Advanced Research Projects Agency (ARPA). [http://archive.adaic.com/tools/SFTP/] Transportable Applications Enviornment (TAE) The Transportable Applications Environment (TAE) Project is a state-of-the-art user interface development and management system, that provides services and tools for developing and managing graphically-oriented user interfaces, as well as providing common application executive services. The main component of TAE Plus is a WYSIWYG user interface designer's Workbench that allows an application developer to interactively construct a graphical user interface (GUI) by arranging and manipulating TAE Plus "interaction objects". These interaction objects include both user entry items (e.g., radio buttons, text keyin, icon buttons) and real-time dynamic data objects (e.g., dials, sliders, gauges, and discrete picture sequences). The Workbench also provides the capability to dynamically define "connections" between interaction objects, as well as to rehearse the designed GUI dialogue. The TAE Plus Workbench is a tool for building user interfaces. It is designed for both non-programmers and programmers. Knowledge of OSF/Motif or the X Window System is not necessary. New TAE Plus users quickly master the intuitive operation of the Workbench and can build working interfaces in a matter of hours - often without consulting manuals. As an aid to bridging the gap between the development and runtime environments, the Workbench provides the option of generating a skeleton source code program (in C, ANSI C, C++, and Ada) which fully displays and manages the designed GUI. This Workbench-generated code includes the calls to the TAE Plus runtime services and the Window Programming Tools (WPTs). The separation of the user interface from the application code allows changes to be made easily to an application's GUI without recompiling or relinking the software, and also hides the complexities of the underlying X and Motif windowing services from the application. [http://groucho.gsfc.nasa.gov/Code_520/Code_522/Projects/TAE/Bulletin/TAE_Bulletin3.htm] Unix - Paradise Paradise is a set of Ada packages intended to provide an interface to the Unix operating system, and more specifically to the communication routines, that are accessed via file descriptors. It lets the Ada programmer use files, pipes, and sockets, as well as signals, error codes, environment variables, etc., using an interface that looks as much as possible like the C interface. Paradise supports multi-tasking: any input or output is blocking for the calling task only, and not for the entire process. Paradise is intended to be system-independant and compiler-independant; so far, it works on four environments: - SunOS 4.1 (Sparc) and SunAda (Verdix 6.1) compiler - SunOS 4.1 (Sparc) and TeleSoft 4.1.1 compiler - HP-UX (HP9000/700) and HP-Ada (Alsys) compiler - HP-UX (HP9000/700) and Verdix 6.3d compiler It is known not to work well on SunOS/Alsys, because of problems on signal handlers; For people who would like to port it to other environments, information on portability is displayed inside the code. A programmer's guide should appear in future versions. Send all comments, bug reports, patches to "paradise@cenatls.cena.dgac.fr" (Nicolas Courtel). [http://archive.adaic.com/tools/bindings/paradise/] Ada Binding to XModem and Kermit Network Protocols This is a set of Ada packages that implement the file transfer protocols only (for X_Modem and Kermit protocols). The documentation is complete and the implementation encourages reuse of this tool in a variety of ways.hpot [http://archive.adaic.com/tools/bindings/xmodem-kermit/] X-Windows - Motif These are the BCA/STARS Motif Ada bindings. Motif is an X-Windows based toolkit for user interface development. The BCA Motif Ada bindings are a binding to (not an implementation of): - the Motif widget (user interface object) set, and - a subset of the Motif functions You must have the Motif object code libraries to use this software. The bindings were developed using Motif version 1.0.1 and have not been tested under 1.1. [http://archive.adaic.com/tools/bindings/MOTIF/] X-Windows - X, Xlib, Xt, Motif This is a complete set of Ada Xlib/Xt/Motif bindings, and a set of examples. The Ada Xlib/Xt/Motif bindings require the existance of the C Xlib/Xt/Motif bindings. (Ie: the include files and the libraries are available). The actual bindings are pure Ada code, produced by tools written in Ada and C, with all the tools etc. in the tar file. The C tools are compiled using your system's Xlib, Xt, and Xm include files, and they use the information found there to produce Ada representation clauses, constants, etc. that exactly match the C representations of the structures, etc. This is how this kit can reliably generate bindings for a range of architectures, regardless of word-size, alignment-rules, etc. These bindings are for X11R4/Motif 1.1, X11R5/Motif 1.2 and DECMotif Extensions. These bindings are meant for DEC Ada 3.0 and later on OSF/1 and OpenVMS. They should work, or be easily modified to work, on many other Ada compilers and platforms. [http://archive.adaic.com/tools/bindings/Xlib-Xt-Xm-bindings/] X-Windows - Ada/X Toolkit This software package provides an Ada programmatic interface to a set of reusable user interface abstractions known as widgets. The software provides the full functionality of the M.I.T X Consortium Version 11 Release 4 X Window System. The software consists of three components: an Ada binding to the Xlib layer, an Ada implementation of the Xt Intrinsics layer, and an Ada widget library. The Ada binding to the Xlib layer upgrades the STARS Foundations Ada Xlib binding, and provides a protocol interface with a set of graphics drawing primitives. The Xt Intrinsics layer provides a policy-free mechanism for creating and managing user interface objects. User interface objects are contained in the widget library, which consists of a small set of commonly used user interface abstractions such as scroll bars and command buttons. This product was developed as part of the Software Technology for Adaptable, Reliable Systems (STARS) program, sponsored by the Advanced Research Projects Agency (ARPA). [http://archive.adaic.com/tools/bindings/X-toolkit/]
[ftp://ftp.cs.colorado.edu/pub/cs/distribs/arcadia/adatcl.txt]
Adobe Font Metrics This set of packages provides an Ada binding to Adobe Font Metrics. They utilize an AFM parser written in C. Together these files provide the functionality to parse Adobe Font Metrics files and store the information in predefined data structures. It is intended to work with an application program that needs font metric information. The program can be used as is by making a procedure call to parse an AFM file and have the data stored, or an application developer may wish to customize the code. This program is based on the document "Adobe Font Metrics Files, Specification Version 2.0". AFM files are separated into distinct sections of different data. Because of this, the parseAFM program can parse a specified file to only save certain sections of information based on the application's needs. A record containing the requested information will be returned to the application. AFM files are divided into five sections of data: 1) The Global Font Information 2) The Character Metrics Information 3) The Track Kerning Data 4) The Pair-Wise Kerning Data 5) The Composite Character Data Basically, the application can request any of these sections independent of what other sections are requested. In addition, in recognizing that many applications will want ONLY the x-width of characters and not all of the other character metrics information, there is a way to receive only the width information so as not to pay the storage cost for the unwanted data. An application should never request both the "quick and dirty" char metrics (widths only) and the Character Metrics Information since the Character Metrics Information will contain all of the character widths as well. [http://archive.adaic.com/tools/bindings/ADOBE] cbind - A translator for "thin" Ada bindings to C This tool is designed to aid in the creation of Ada bindings to C. The code is provided "as is" without any warranty whatsoever. The code is published to the public domain as free software. The developer does not intend to imply that the bindings generated by this translator will be complete. It may or may not be useful as an aid to generating bindings.[On the World Wide Web:http://www.cdrom.com/pub/ada/swtools/cbind; or ftp://rational.com/public/tools/cbind] Customer Information Control System (CICS) The Customer Information Control System (CICS) is an IBM transation-processing system. This is an interface that binds Ada to the IBM CICS transaction-oriented applications. In addition, it provides SQL for future database applications to allow migration to Ada while retaining massive historical databases and existing functional software. [http://archive.adaic.com/tools/bindings/CICS] Distributed Computing Environment (DCE) The Distributed Computing Environment (DCE) is a standard of the Open Systems Foundation (OSF). It is an integrated set of services that provides the foundation for distributed computing in a heterogeneous computing environment. [http://archive.adaic.com/tools/bindings/DCE] Generic Package of Elementary Functions (GPEF) - Generic Elementary Math Functions These generic Ada packages provide a set of mathematical functions that conform to the SIGAda Numerics Working Group's proposed standard, which is a proposed secondary ISO standard. The package as specified consists of 29 functions, which can be classified into three families: exponential, trigonometric, and hyperbolic. The exponential family consists of 5 functions: Sqrt(x), Exp(x), X**Y, Log(X) and Log(x,Base). The trigonometric family consists of 16 functions: the four usual trig functions Sin(x), Cos(x), Tan(x), and Cot(x) and the four inverses Arcsin(x), Arccos(x), Arctan(y,x), and Arccot(x,y) constitute 8 of the 16. These 8 functions are approximations to the corresponding mathematical functions, with 2pi being the period. The proposed ISO standard also requires 8 other functions that allow the user to specify a period (e.g., 360.0). The calling sequences for the other 8 are Sin(x,cycle), Cos(x, cycle), and Arccot(y,x,cycle). Finally, the hyperbolic family consists of 8 functions: the commonly used Sinh(x), Cosh(x), Tanh(x), and Coth(x) and the corresponding inverses Arcsinh(x), Arccosh(x), Arctanh(x), and Arccoth(x). The code has comments defining usage and implementation details, plus an informative README file. Also included are test packages and drivers to test each of the functions. This product was developed as part of the Software Technology for Adaptable, Reliable Systems (STARS) program, sponsored by the Advanced Research Projects Agency (ARPA). [http://archive.adaic.com/tools/bindings/GPEF] GPEF - Generic Math Functions These Ada math packages implement the following generic packages specified by the ISO Numerics Rapporteur Group: generic_elementary_functions, generic_primitive_functions, generic_algebraic_functions, and math_constants. As with most software, this carries no guarantees. Single precision and double precision have been pretty well tested on an Apollo (Alsys) and a VAX (DEC). Longest_Float precision is mostly finished, but rough. This will also compile on VAX/Unix (Verdix), Apollo/SR10.2 (Verdix). This product was developed as part of the Software Technology for Adaptable, Reliable Systems (STARS) program, sponsored by the Advanced Research Projects Agency (ARPA). [http://archive.adaic.com/tools/bindings/GPEF/gmf-bindings] Computer Graphics/Graphical Kernel System This Ada software bundle implements the Graphical Kernel System (GKS), an internationally accepted standard for computer graphics recognized by the American National Standards Institute (ANSI) and the International Standardization Organization (ISO). The Graphical Kernel System provides an application programmer's interface, defining graphics functions at the logical device level rather than the hardware device level. Using a GKS implementation, an applications programmer can write graphics programs without having to learn the scheme for describing graphics on a particular hardware device. This GKS interface allows the application programmer to make Ada calls to a wide variety of graphics and plotting routines, and supports several types of graphics terminals. This product was developed as part of the Software Technology for Adaptable, Reliable Systems (STARS) program, sponsored by the Advanced Research Projects Agency (ARPA). [http://archive.adaic.com/tools/bindings/GKS] Information Resource Dictionary System (IRDS) This document is an editor's draft of the Information Resource Dictionary System (IRDS) Services Interface, dated 3 July 1992, ISO/IEC 10728: 1993 (E), Draft International Standard. It is for the purpose of review by participants in the SC21 editing committee. This draft standard defines an interface to describe and control an enterprise's information resources. IRDS interfaces to an SQL type of database using services in the form of function and procedure calls. A draft Ada binding to IRDS has been submitted to the ISO IRDS Rapporteur Group as a proposed Annex D to ISO/IEC 10728. It is currently a working draft. [archive.adaic.com/tools/bindings/IRDS] Microsoft Windows - Win32Ada Binding Win32Ada is a complete thin binding to Win32, the 32-bit interface to Microsoft Windows 95 And Microsoft Windows NT. (A subset of Win32 (Win32S) is supported on Windows 3.1.) Win32Ada's capabilities include: creation of processes, windows, and menus; graphics, keyboard, and mouse control; MAPI (mail); Dynamic Data Exchange (DDE); Object Linking and Embedding (OLE), compound documents; video, sound, and multimedia; and Open Data Base Connectivity (ODBC). That is, everything that is available to a C program. At present, distribution arrangements have not yet been finalized. In the interim, those interested in obtaining copies may contact Dennis Struble at Intermetrics, Inc., for further information. Dennis Struble Intermetrics, Inc. 733 Concord Avenue Cambridge, MA 02138 tel: 617/661-1840 fax: 617/868-2843 MIL-STD 1553 Data Bus - Generic Avionics Data Bus Tool Kit (GADBTK) This is the source code for the Generic Avionics Data Bus Tool Kit (GADBTK), which is part of the Ada Joint Program Office's Ada Technology Insertion Program (ATIP) binding project. The GADBTK project is intended to provide a strong Ada software binding to the Military Standard 1553 data bus. The bus is used for time multiplex data communications between different sensor and computer subsystems on many current military platforms. The associated documentation is available through the Defense Technical Information Center (DTIC) and the National Technical Information Service (NTIS). [http://archive.adaic.com/tools/bindings/gadbtk] OS2 - Thin Ada 95 Binding to the OS/2 API The OS2 package provides thin, direct Ada 95 bindings to the most important sections of OS/2's GUI API, i.e. Win, GPI, Dev, Spl, DDF, Prf, Drg. 1.) Use the BUILD command file to compile the bindings and create the sample program (WINTEST). 2.) Note that some names and types are not exactly identical to the CAPI definitions. Declarations like "HWND hwnd", anonymous arrays as structure members, pointers etc. had to be changed. 3.) Support for other OS/2 APIs than those related to the Presentation Manager has been dropped. The bindings have been created using a customized CBIND6 and tested with GNAT 3.05 on OS/2 Warp v3. The CBIND utility can be obtained from ftp://rational.com/public/tools/cbind/, the GNAT Ada'95 compiler is at ftp://ftp.cs.nyu.edu/pub/gnat/. The base file was OS2EMX.H (part of gcc/emx), thus a copy of the GNU Library General Public License is included with the distribution archive. (A personal note: I still don't understand why all this hardcore legal stuff is necessary and why every piece of code has to include a lengthy all-capitals disclaimer message.) All kinds of feedback are appreciated. POC: Klaus A. Brunner e-mail: kbrun@ibm.net [ftp://cs.nyu.edu/pub/gnat/contrib/os2/bindings/] Package CGI "Package CGI" is an Ada 95 interface to the "Common Gateway Interface" (CGI). This package makes it easier to create Ada programs that can be invoked by World-Wide-Web (WWW) HTTP servers using the standard CGI interface. Using it, you can create Ada programs that perform queries or other processing by request from a WWW user. This package is copyright (C) 1995 David A. Wheeler (wheeler@ida.org). You are free to use it in anything you wish without restriction or payment, but please provide credit if you use this package. This Ada package provides two data access approaches from the CGI: 1.) As an associative array; simply provide the key name (as a string) and the value associated with that key will be returned. 2.) As a sequence of key-value pairs, indexed from 1 to Argument_Count. This access approach is similar to the Ada library Ada.Command_Line. The main access routines support both Ada 95 types String and Unbounded_String. [http://wuarchive.wustl.edu/languages/ada/swcomps/cgi/cgi.html] Paradox Dbms_Template represents a simple DBMS class. It is single user, but it can be extended for networks. It was created as a binding to Paradox Engine 1.0. It can serve as a binding to other DBMS's such as dBASE and Clipper by purchasing a C library for accessing other DBMS's and changing the body of Dbms_Template. This binding requires Paradox Engine and Microsoft's C library (large model). [http://archive.adaic.com/tools/bindings/paradox] Portable Common Tool Environment (PCTE) This is the Ada Portable Common Tool Environment (PCTE) binding (AdaPCTE). It provides Ada applications access to a PCTE object base as defined by the European Computer Manufacturers Association (ECMA) Ada PCTE specification (Standard ECMA-162 Ada Language Binding, December 1991). This "alpha" release provides a minimal set of interfaces to permit Ada developers to experiment with and evaluate PCTE for use in future Ada applications. It is expected that later releases will complete the binding. Since no conforming implementations of ECMA PCTE existed as defined in Standard ECMA-149, AdaPCTE ws implemented on GIE Emeraude's PCTE V12.2 Fix 7 or V12.3. Because only a subset of the ECMA PCTE Ada specification had been implemented for the 0.2 release, and because ECMA PCTE functionality differs somewhat from Emeraude PCTE functionality, the complete functionality of Emeraude PCTE is not available to Ada applications using these bindings. [http://archive.adaic.com/tools/bindings/PCTE] POSIX - Ada 83 The following statement is provided by the IEEE and governs the use of this code: These package specifications were extracted from IEEE Std 1003.5-1992, IEEE Standard for Information Technology - POSIX Ada Language Interfaces - Part 1: Binding System Application Program Interface, copyright (c) 1992 by the Institute of Electrical and Electronics Engineers, Inc. These package specifications represent only a portion of the document and are not to be interpreteted as the approved consensus standard. The IEEE Std 1003.5-1992 must be used in conjunction with these package specifications in order to claim conformance. The IEEE takes no responsibility for and will assume no liability for damages resulting from the reader's misinpretation of said information resulting from its out of context nature. To order copies of the IEEE Std 1003.5-1992, please contact the IEEE Service Center at 445 Hoes Lane, PO Box 1331, Piscataway, NJ 08855-1331; via phone at 1-800-678-IEEE, 908-981-1393; or via fax at 908-981-9667. Note that these specifications are incomplete, in that the standard identifies some declarations as implementation-defined. In addition, no package bodies are provided. This standard was developed by IEEE Working Group P1003.5. For more information on this group, contact the Chairman, James Lonjers, lonjers@vfl.paramax.com or 805/987-9457. Formal requests for interpretations of this standard should be addressed to the IEEE, as specified in the document. An e-mail list discussing ongoing POSIX/Ada binding work is available as "posix-ada@verdix.com". Send e-mail to "posixadarequest@verdix.com" to be included on the list. Current work in IEEE P1003.5 consists of the Ada Binding to POSIX Real-Time Extensions (IEEE Project P1003.20) and current interpretations of IEEE Std 1003.5-1992. [http://archive.adaic.com/tools/bindings/POSIX/ada83/] POSIX - Ada 95 These are POSIX .5 library specs. The library is under development, and this is a work-in-progress version release. A work-in-progress implementation of the package bodies should also be available shortly. (For more information via the World Wide Web, look into the PART Home page: "http://www.cs.fsu.edu/~doh/") For questions and suggestions, e-mail can be sent to part@ada.cs.fsu.edu. [http://archive.adaic.com/tools/bindings/POSIX/ada95/] POSIX Ada Run-Time System Libraries (PART) This is a pointer file to the POSIX Ada Run-Time System Libraries (PART), which contains code from one of the projects supported by the Ada Joint Program Office's FY91 Ada Technology Insertion Program (ATIP). PART is available to the public from Florida State University (FSU) for non-commercial use. See copyright note near end. PART can be obtained by anonymous FTP from FSU's ftp server (ftp.cs.fsu.edu). The release there is version 1.2 of the POSIX Ada Run-Time System Library (PART) using a CARTS interface [3]. It is implemented over the POSIX 1003.4a Threads Extension (Pthreads) [1], and requires access to an interface compliant with that standard. The purpose of this release of PART is to demonstrate the feasibility of implementing an Ada '83 run-time system over POSIX threads, and disclose the full details of one such implementation. By mapping Ada tasks onto POSIX threads, this approach should enhance the portability of Ada runtime systems and provide a platform for exploiting shared-memory multiprocessors. [ftp://ftp.cs.fsu.edu/pub/PART] SQL - A Prototype Binding of ANSI-Standard SQL to Ada Supporting the SAME Methodology This is the final release of the Computer Software Configuration Item (CSCI) identified as the IBM STARS Prototype Binding of Ansi-Standard SQL to Ada Supporting the SQL Ada Module Extensions (SAME) Methodology. This software was developed for the DoD's Software Technology for Adaptable, Reliable Systems (STARS) Program. The primary purpose of the Binding of ANSI-Standard SQL to Ada is to provide access to relational data bases that support SQL from within an Ada program. The secondary purpose of this project is to provide this access by implementing the SAME approach to data base interface as described in Guidelines for Use of the SAME, Technical Report CMU/SEI-89-TR-16. SAME is a specialization of the modular approach for implementing an interface between a programming language (in this case Ada) and a DBMS whose data manipulation language is SQL. SAME is an extension of the existing SQL module language standard meant to maximize Ada language capabilities. SAME provides an abstraction/mapping between an Ada program's objects and the weakly typed SQL concrete types through a layer that exists between the application program and the actual interface to the data base. To use SAME without any automated support would be a time consuming task. This project will provide such automated support. [http://archive.adaic.com/tools/bindings/SQL] SQL - SAMeDL Development Environment This is a release of the Intermetrics SAMeDL Development Environment. This software has been provided as part of a research and development effort under the Ada Technology Insertion Program (ATIP) in an effort to investigate and promote Ada/SQL interfacing technology, namely SAMeDL, within the Ada community. Although all attempts have been made to make this software as robust as possible, it is not of production quality. Deficiencies and problems are inherent and should not be used as a means for negatively judging the merits of SAMeDL. The challenges pertaining to the use of Ada and SQL in a well-engineered information system led to the formation of the SQL Ada Module Extension Design Committee (SAME-DC) at the Software Engineering Institute (SEI). The committee developed the SQL Ada Module Extension (SAME) Methodology to support and extend the modular approach to using Ada and SQL in database applications. The language which is used to implement SAME is the SQL Ada Module Description Language, or SAMeDL. Using the SAME methodology requires that SQL statements be separated from the Ada application code, and encapsulated in separate modules. The SQL statements are not embedded in the Ada packages, thus isolating the Ada application from the DBMS design and implementation. SAMeDL is designed to facilitate the construction of Ada database applications that use the SAME methodology. [http://archive.adaic.com/tools/bindings/SAMeDL/] TCP/IP - Secure File Transfer Program (SFTP) The Secure File Transfer Program provides a means of transferring sensitive information from one computer system to another. This system implements Transmission Control Protocol (TCP) and conforms to RFC:793. TCP provides a reliable communication between pairs of processes in logically distinct hosts on networks and sets of interconnected networks. The TCP resides in the transport layer of the DoD Internet Model. The system encapsulates messages received from the utility layer protocols, which reside directly above, and passes the packet to the Internet layer (communicates with the Internet Protocol (IP)). The TCP supports the following functions: connection-oriented, reliable data transfer, ordered data transfer delivery, full-duplex, and flow control. This product was developed as part of the Software Technology for Adaptable, Reliable Systems (STARS) program, sponsored by the Advanced Research Projects Agency (ARPA). [http://archive.adaic.com/tools/SFTP/] Transportable Applications Enviornment (TAE) The Transportable Applications Environment (TAE) Project is a state-of-the-art user interface development and management system, that provides services and tools for developing and managing graphically-oriented user interfaces, as well as providing common application executive services. The main component of TAE Plus is a WYSIWYG user interface designer's Workbench that allows an application developer to interactively construct a graphical user interface (GUI) by arranging and manipulating TAE Plus "interaction objects". These interaction objects include both user entry items (e.g., radio buttons, text keyin, icon buttons) and real-time dynamic data objects (e.g., dials, sliders, gauges, and discrete picture sequences). The Workbench also provides the capability to dynamically define "connections" between interaction objects, as well as to rehearse the designed GUI dialogue. The TAE Plus Workbench is a tool for building user interfaces. It is designed for both non-programmers and programmers. Knowledge of OSF/Motif or the X Window System is not necessary. New TAE Plus users quickly master the intuitive operation of the Workbench and can build working interfaces in a matter of hours - often without consulting manuals. As an aid to bridging the gap between the development and runtime environments, the Workbench provides the option of generating a skeleton source code program (in C, ANSI C, C++, and Ada) which fully displays and manages the designed GUI. This Workbench-generated code includes the calls to the TAE Plus runtime services and the Window Programming Tools (WPTs). The separation of the user interface from the application code allows changes to be made easily to an application's GUI without recompiling or relinking the software, and also hides the complexities of the underlying X and Motif windowing services from the application. [http://groucho.gsfc.nasa.gov/Code_520/Code_522/Projects/TAE/Bulletin/TAE_Bulletin3.htm] Unix - Paradise Paradise is a set of Ada packages intended to provide an interface to the Unix operating system, and more specifically to the communication routines, that are accessed via file descriptors. It lets the Ada programmer use files, pipes, and sockets, as well as signals, error codes, environment variables, etc., using an interface that looks as much as possible like the C interface. Paradise supports multi-tasking: any input or output is blocking for the calling task only, and not for the entire process. Paradise is intended to be system-independant and compiler-independant; so far, it works on four environments: - SunOS 4.1 (Sparc) and SunAda (Verdix 6.1) compiler - SunOS 4.1 (Sparc) and TeleSoft 4.1.1 compiler - HP-UX (HP9000/700) and HP-Ada (Alsys) compiler - HP-UX (HP9000/700) and Verdix 6.3d compiler It is known not to work well on SunOS/Alsys, because of problems on signal handlers; For people who would like to port it to other environments, information on portability is displayed inside the code. A programmer's guide should appear in future versions. Send all comments, bug reports, patches to "paradise@cenatls.cena.dgac.fr" (Nicolas Courtel). [http://archive.adaic.com/tools/bindings/paradise/] Ada Binding to XModem and Kermit Network Protocols This is a set of Ada packages that implement the file transfer protocols only (for X_Modem and Kermit protocols). The documentation is complete and the implementation encourages reuse of this tool in a variety of ways.hpot [http://archive.adaic.com/tools/bindings/xmodem-kermit/] X-Windows - Motif These are the BCA/STARS Motif Ada bindings. Motif is an X-Windows based toolkit for user interface development. The BCA Motif Ada bindings are a binding to (not an implementation of): - the Motif widget (user interface object) set, and - a subset of the Motif functions You must have the Motif object code libraries to use this software. The bindings were developed using Motif version 1.0.1 and have not been tested under 1.1. [http://archive.adaic.com/tools/bindings/MOTIF/] X-Windows - X, Xlib, Xt, Motif This is a complete set of Ada Xlib/Xt/Motif bindings, and a set of examples. The Ada Xlib/Xt/Motif bindings require the existance of the C Xlib/Xt/Motif bindings. (Ie: the include files and the libraries are available). The actual bindings are pure Ada code, produced by tools written in Ada and C, with all the tools etc. in the tar file. The C tools are compiled using your system's Xlib, Xt, and Xm include files, and they use the information found there to produce Ada representation clauses, constants, etc. that exactly match the C representations of the structures, etc. This is how this kit can reliably generate bindings for a range of architectures, regardless of word-size, alignment-rules, etc. These bindings are for X11R4/Motif 1.1, X11R5/Motif 1.2 and DECMotif Extensions. These bindings are meant for DEC Ada 3.0 and later on OSF/1 and OpenVMS. They should work, or be easily modified to work, on many other Ada compilers and platforms. [http://archive.adaic.com/tools/bindings/Xlib-Xt-Xm-bindings/] X-Windows - Ada/X Toolkit This software package provides an Ada programmatic interface to a set of reusable user interface abstractions known as widgets. The software provides the full functionality of the M.I.T X Consortium Version 11 Release 4 X Window System. The software consists of three components: an Ada binding to the Xlib layer, an Ada implementation of the Xt Intrinsics layer, and an Ada widget library. The Ada binding to the Xlib layer upgrades the STARS Foundations Ada Xlib binding, and provides a protocol interface with a set of graphics drawing primitives. The Xt Intrinsics layer provides a policy-free mechanism for creating and managing user interface objects. User interface objects are contained in the widget library, which consists of a small set of commonly used user interface abstractions such as scroll bars and command buttons. This product was developed as part of the Software Technology for Adaptable, Reliable Systems (STARS) program, sponsored by the Advanced Research Projects Agency (ARPA). [http://archive.adaic.com/tools/bindings/X-toolkit/]
This program is based on the document "Adobe Font Metrics Files, Specification Version 2.0". AFM files are separated into distinct sections of different data. Because of this, the parseAFM program can parse a specified file to only save certain sections of information based on the application's needs. A record containing the requested information will be returned to the application. AFM files are divided into five sections of data:
Basically, the application can request any of these sections independent of what other sections are requested. In addition, in recognizing that many applications will want ONLY the x-width of characters and not all of the other character metrics information, there is a way to receive only the width information so as not to pay the storage cost for the unwanted data. An application should never request both the "quick and dirty" char metrics (widths only) and the Character Metrics Information since the Character Metrics Information will contain all of the character widths as well.
[http://archive.adaic.com/tools/bindings/ADOBE]
cbind - A translator for "thin" Ada bindings to C This tool is designed to aid in the creation of Ada bindings to C. The code is provided "as is" without any warranty whatsoever. The code is published to the public domain as free software. The developer does not intend to imply that the bindings generated by this translator will be complete. It may or may not be useful as an aid to generating bindings.[On the World Wide Web:http://www.cdrom.com/pub/ada/swtools/cbind; or ftp://rational.com/public/tools/cbind] Customer Information Control System (CICS) The Customer Information Control System (CICS) is an IBM transation-processing system. This is an interface that binds Ada to the IBM CICS transaction-oriented applications. In addition, it provides SQL for future database applications to allow migration to Ada while retaining massive historical databases and existing functional software. [http://archive.adaic.com/tools/bindings/CICS] Distributed Computing Environment (DCE) The Distributed Computing Environment (DCE) is a standard of the Open Systems Foundation (OSF). It is an integrated set of services that provides the foundation for distributed computing in a heterogeneous computing environment. [http://archive.adaic.com/tools/bindings/DCE] Generic Package of Elementary Functions (GPEF) - Generic Elementary Math Functions These generic Ada packages provide a set of mathematical functions that conform to the SIGAda Numerics Working Group's proposed standard, which is a proposed secondary ISO standard. The package as specified consists of 29 functions, which can be classified into three families: exponential, trigonometric, and hyperbolic. The exponential family consists of 5 functions: Sqrt(x), Exp(x), X**Y, Log(X) and Log(x,Base). The trigonometric family consists of 16 functions: the four usual trig functions Sin(x), Cos(x), Tan(x), and Cot(x) and the four inverses Arcsin(x), Arccos(x), Arctan(y,x), and Arccot(x,y) constitute 8 of the 16. These 8 functions are approximations to the corresponding mathematical functions, with 2pi being the period. The proposed ISO standard also requires 8 other functions that allow the user to specify a period (e.g., 360.0). The calling sequences for the other 8 are Sin(x,cycle), Cos(x, cycle), and Arccot(y,x,cycle). Finally, the hyperbolic family consists of 8 functions: the commonly used Sinh(x), Cosh(x), Tanh(x), and Coth(x) and the corresponding inverses Arcsinh(x), Arccosh(x), Arctanh(x), and Arccoth(x). The code has comments defining usage and implementation details, plus an informative README file. Also included are test packages and drivers to test each of the functions. This product was developed as part of the Software Technology for Adaptable, Reliable Systems (STARS) program, sponsored by the Advanced Research Projects Agency (ARPA). [http://archive.adaic.com/tools/bindings/GPEF] GPEF - Generic Math Functions These Ada math packages implement the following generic packages specified by the ISO Numerics Rapporteur Group: generic_elementary_functions, generic_primitive_functions, generic_algebraic_functions, and math_constants. As with most software, this carries no guarantees. Single precision and double precision have been pretty well tested on an Apollo (Alsys) and a VAX (DEC). Longest_Float precision is mostly finished, but rough. This will also compile on VAX/Unix (Verdix), Apollo/SR10.2 (Verdix). This product was developed as part of the Software Technology for Adaptable, Reliable Systems (STARS) program, sponsored by the Advanced Research Projects Agency (ARPA). [http://archive.adaic.com/tools/bindings/GPEF/gmf-bindings] Computer Graphics/Graphical Kernel System This Ada software bundle implements the Graphical Kernel System (GKS), an internationally accepted standard for computer graphics recognized by the American National Standards Institute (ANSI) and the International Standardization Organization (ISO). The Graphical Kernel System provides an application programmer's interface, defining graphics functions at the logical device level rather than the hardware device level. Using a GKS implementation, an applications programmer can write graphics programs without having to learn the scheme for describing graphics on a particular hardware device. This GKS interface allows the application programmer to make Ada calls to a wide variety of graphics and plotting routines, and supports several types of graphics terminals. This product was developed as part of the Software Technology for Adaptable, Reliable Systems (STARS) program, sponsored by the Advanced Research Projects Agency (ARPA). [http://archive.adaic.com/tools/bindings/GKS] Information Resource Dictionary System (IRDS) This document is an editor's draft of the Information Resource Dictionary System (IRDS) Services Interface, dated 3 July 1992, ISO/IEC 10728: 1993 (E), Draft International Standard. It is for the purpose of review by participants in the SC21 editing committee. This draft standard defines an interface to describe and control an enterprise's information resources. IRDS interfaces to an SQL type of database using services in the form of function and procedure calls. A draft Ada binding to IRDS has been submitted to the ISO IRDS Rapporteur Group as a proposed Annex D to ISO/IEC 10728. It is currently a working draft. [archive.adaic.com/tools/bindings/IRDS] Microsoft Windows - Win32Ada Binding Win32Ada is a complete thin binding to Win32, the 32-bit interface to Microsoft Windows 95 And Microsoft Windows NT. (A subset of Win32 (Win32S) is supported on Windows 3.1.) Win32Ada's capabilities include: creation of processes, windows, and menus; graphics, keyboard, and mouse control; MAPI (mail); Dynamic Data Exchange (DDE); Object Linking and Embedding (OLE), compound documents; video, sound, and multimedia; and Open Data Base Connectivity (ODBC). That is, everything that is available to a C program. At present, distribution arrangements have not yet been finalized. In the interim, those interested in obtaining copies may contact Dennis Struble at Intermetrics, Inc., for further information. Dennis Struble Intermetrics, Inc. 733 Concord Avenue Cambridge, MA 02138 tel: 617/661-1840 fax: 617/868-2843 MIL-STD 1553 Data Bus - Generic Avionics Data Bus Tool Kit (GADBTK) This is the source code for the Generic Avionics Data Bus Tool Kit (GADBTK), which is part of the Ada Joint Program Office's Ada Technology Insertion Program (ATIP) binding project. The GADBTK project is intended to provide a strong Ada software binding to the Military Standard 1553 data bus. The bus is used for time multiplex data communications between different sensor and computer subsystems on many current military platforms. The associated documentation is available through the Defense Technical Information Center (DTIC) and the National Technical Information Service (NTIS). [http://archive.adaic.com/tools/bindings/gadbtk] OS2 - Thin Ada 95 Binding to the OS/2 API The OS2 package provides thin, direct Ada 95 bindings to the most important sections of OS/2's GUI API, i.e. Win, GPI, Dev, Spl, DDF, Prf, Drg. 1.) Use the BUILD command file to compile the bindings and create the sample program (WINTEST). 2.) Note that some names and types are not exactly identical to the CAPI definitions. Declarations like "HWND hwnd", anonymous arrays as structure members, pointers etc. had to be changed. 3.) Support for other OS/2 APIs than those related to the Presentation Manager has been dropped. The bindings have been created using a customized CBIND6 and tested with GNAT 3.05 on OS/2 Warp v3. The CBIND utility can be obtained from ftp://rational.com/public/tools/cbind/, the GNAT Ada'95 compiler is at ftp://ftp.cs.nyu.edu/pub/gnat/. The base file was OS2EMX.H (part of gcc/emx), thus a copy of the GNU Library General Public License is included with the distribution archive. (A personal note: I still don't understand why all this hardcore legal stuff is necessary and why every piece of code has to include a lengthy all-capitals disclaimer message.) All kinds of feedback are appreciated. POC: Klaus A. Brunner e-mail: kbrun@ibm.net [ftp://cs.nyu.edu/pub/gnat/contrib/os2/bindings/] Package CGI "Package CGI" is an Ada 95 interface to the "Common Gateway Interface" (CGI). This package makes it easier to create Ada programs that can be invoked by World-Wide-Web (WWW) HTTP servers using the standard CGI interface. Using it, you can create Ada programs that perform queries or other processing by request from a WWW user. This package is copyright (C) 1995 David A. Wheeler (wheeler@ida.org). You are free to use it in anything you wish without restriction or payment, but please provide credit if you use this package. This Ada package provides two data access approaches from the CGI: 1.) As an associative array; simply provide the key name (as a string) and the value associated with that key will be returned. 2.) As a sequence of key-value pairs, indexed from 1 to Argument_Count. This access approach is similar to the Ada library Ada.Command_Line. The main access routines support both Ada 95 types String and Unbounded_String. [http://wuarchive.wustl.edu/languages/ada/swcomps/cgi/cgi.html] Paradox Dbms_Template represents a simple DBMS class. It is single user, but it can be extended for networks. It was created as a binding to Paradox Engine 1.0. It can serve as a binding to other DBMS's such as dBASE and Clipper by purchasing a C library for accessing other DBMS's and changing the body of Dbms_Template. This binding requires Paradox Engine and Microsoft's C library (large model). [http://archive.adaic.com/tools/bindings/paradox] Portable Common Tool Environment (PCTE) This is the Ada Portable Common Tool Environment (PCTE) binding (AdaPCTE). It provides Ada applications access to a PCTE object base as defined by the European Computer Manufacturers Association (ECMA) Ada PCTE specification (Standard ECMA-162 Ada Language Binding, December 1991). This "alpha" release provides a minimal set of interfaces to permit Ada developers to experiment with and evaluate PCTE for use in future Ada applications. It is expected that later releases will complete the binding. Since no conforming implementations of ECMA PCTE existed as defined in Standard ECMA-149, AdaPCTE ws implemented on GIE Emeraude's PCTE V12.2 Fix 7 or V12.3. Because only a subset of the ECMA PCTE Ada specification had been implemented for the 0.2 release, and because ECMA PCTE functionality differs somewhat from Emeraude PCTE functionality, the complete functionality of Emeraude PCTE is not available to Ada applications using these bindings. [http://archive.adaic.com/tools/bindings/PCTE] POSIX - Ada 83 The following statement is provided by the IEEE and governs the use of this code: These package specifications were extracted from IEEE Std 1003.5-1992, IEEE Standard for Information Technology - POSIX Ada Language Interfaces - Part 1: Binding System Application Program Interface, copyright (c) 1992 by the Institute of Electrical and Electronics Engineers, Inc. These package specifications represent only a portion of the document and are not to be interpreteted as the approved consensus standard. The IEEE Std 1003.5-1992 must be used in conjunction with these package specifications in order to claim conformance. The IEEE takes no responsibility for and will assume no liability for damages resulting from the reader's misinpretation of said information resulting from its out of context nature. To order copies of the IEEE Std 1003.5-1992, please contact the IEEE Service Center at 445 Hoes Lane, PO Box 1331, Piscataway, NJ 08855-1331; via phone at 1-800-678-IEEE, 908-981-1393; or via fax at 908-981-9667. Note that these specifications are incomplete, in that the standard identifies some declarations as implementation-defined. In addition, no package bodies are provided. This standard was developed by IEEE Working Group P1003.5. For more information on this group, contact the Chairman, James Lonjers, lonjers@vfl.paramax.com or 805/987-9457. Formal requests for interpretations of this standard should be addressed to the IEEE, as specified in the document. An e-mail list discussing ongoing POSIX/Ada binding work is available as "posix-ada@verdix.com". Send e-mail to "posixadarequest@verdix.com" to be included on the list. Current work in IEEE P1003.5 consists of the Ada Binding to POSIX Real-Time Extensions (IEEE Project P1003.20) and current interpretations of IEEE Std 1003.5-1992. [http://archive.adaic.com/tools/bindings/POSIX/ada83/] POSIX - Ada 95 These are POSIX .5 library specs. The library is under development, and this is a work-in-progress version release. A work-in-progress implementation of the package bodies should also be available shortly. (For more information via the World Wide Web, look into the PART Home page: "http://www.cs.fsu.edu/~doh/") For questions and suggestions, e-mail can be sent to part@ada.cs.fsu.edu. [http://archive.adaic.com/tools/bindings/POSIX/ada95/] POSIX Ada Run-Time System Libraries (PART) This is a pointer file to the POSIX Ada Run-Time System Libraries (PART), which contains code from one of the projects supported by the Ada Joint Program Office's FY91 Ada Technology Insertion Program (ATIP). PART is available to the public from Florida State University (FSU) for non-commercial use. See copyright note near end. PART can be obtained by anonymous FTP from FSU's ftp server (ftp.cs.fsu.edu). The release there is version 1.2 of the POSIX Ada Run-Time System Library (PART) using a CARTS interface [3]. It is implemented over the POSIX 1003.4a Threads Extension (Pthreads) [1], and requires access to an interface compliant with that standard. The purpose of this release of PART is to demonstrate the feasibility of implementing an Ada '83 run-time system over POSIX threads, and disclose the full details of one such implementation. By mapping Ada tasks onto POSIX threads, this approach should enhance the portability of Ada runtime systems and provide a platform for exploiting shared-memory multiprocessors. [ftp://ftp.cs.fsu.edu/pub/PART] SQL - A Prototype Binding of ANSI-Standard SQL to Ada Supporting the SAME Methodology This is the final release of the Computer Software Configuration Item (CSCI) identified as the IBM STARS Prototype Binding of Ansi-Standard SQL to Ada Supporting the SQL Ada Module Extensions (SAME) Methodology. This software was developed for the DoD's Software Technology for Adaptable, Reliable Systems (STARS) Program. The primary purpose of the Binding of ANSI-Standard SQL to Ada is to provide access to relational data bases that support SQL from within an Ada program. The secondary purpose of this project is to provide this access by implementing the SAME approach to data base interface as described in Guidelines for Use of the SAME, Technical Report CMU/SEI-89-TR-16. SAME is a specialization of the modular approach for implementing an interface between a programming language (in this case Ada) and a DBMS whose data manipulation language is SQL. SAME is an extension of the existing SQL module language standard meant to maximize Ada language capabilities. SAME provides an abstraction/mapping between an Ada program's objects and the weakly typed SQL concrete types through a layer that exists between the application program and the actual interface to the data base. To use SAME without any automated support would be a time consuming task. This project will provide such automated support. [http://archive.adaic.com/tools/bindings/SQL] SQL - SAMeDL Development Environment This is a release of the Intermetrics SAMeDL Development Environment. This software has been provided as part of a research and development effort under the Ada Technology Insertion Program (ATIP) in an effort to investigate and promote Ada/SQL interfacing technology, namely SAMeDL, within the Ada community. Although all attempts have been made to make this software as robust as possible, it is not of production quality. Deficiencies and problems are inherent and should not be used as a means for negatively judging the merits of SAMeDL. The challenges pertaining to the use of Ada and SQL in a well-engineered information system led to the formation of the SQL Ada Module Extension Design Committee (SAME-DC) at the Software Engineering Institute (SEI). The committee developed the SQL Ada Module Extension (SAME) Methodology to support and extend the modular approach to using Ada and SQL in database applications. The language which is used to implement SAME is the SQL Ada Module Description Language, or SAMeDL. Using the SAME methodology requires that SQL statements be separated from the Ada application code, and encapsulated in separate modules. The SQL statements are not embedded in the Ada packages, thus isolating the Ada application from the DBMS design and implementation. SAMeDL is designed to facilitate the construction of Ada database applications that use the SAME methodology. [http://archive.adaic.com/tools/bindings/SAMeDL/] TCP/IP - Secure File Transfer Program (SFTP) The Secure File Transfer Program provides a means of transferring sensitive information from one computer system to another. This system implements Transmission Control Protocol (TCP) and conforms to RFC:793. TCP provides a reliable communication between pairs of processes in logically distinct hosts on networks and sets of interconnected networks. The TCP resides in the transport layer of the DoD Internet Model. The system encapsulates messages received from the utility layer protocols, which reside directly above, and passes the packet to the Internet layer (communicates with the Internet Protocol (IP)). The TCP supports the following functions: connection-oriented, reliable data transfer, ordered data transfer delivery, full-duplex, and flow control. This product was developed as part of the Software Technology for Adaptable, Reliable Systems (STARS) program, sponsored by the Advanced Research Projects Agency (ARPA). [http://archive.adaic.com/tools/SFTP/] Transportable Applications Enviornment (TAE) The Transportable Applications Environment (TAE) Project is a state-of-the-art user interface development and management system, that provides services and tools for developing and managing graphically-oriented user interfaces, as well as providing common application executive services. The main component of TAE Plus is a WYSIWYG user interface designer's Workbench that allows an application developer to interactively construct a graphical user interface (GUI) by arranging and manipulating TAE Plus "interaction objects". These interaction objects include both user entry items (e.g., radio buttons, text keyin, icon buttons) and real-time dynamic data objects (e.g., dials, sliders, gauges, and discrete picture sequences). The Workbench also provides the capability to dynamically define "connections" between interaction objects, as well as to rehearse the designed GUI dialogue. The TAE Plus Workbench is a tool for building user interfaces. It is designed for both non-programmers and programmers. Knowledge of OSF/Motif or the X Window System is not necessary. New TAE Plus users quickly master the intuitive operation of the Workbench and can build working interfaces in a matter of hours - often without consulting manuals. As an aid to bridging the gap between the development and runtime environments, the Workbench provides the option of generating a skeleton source code program (in C, ANSI C, C++, and Ada) which fully displays and manages the designed GUI. This Workbench-generated code includes the calls to the TAE Plus runtime services and the Window Programming Tools (WPTs). The separation of the user interface from the application code allows changes to be made easily to an application's GUI without recompiling or relinking the software, and also hides the complexities of the underlying X and Motif windowing services from the application. [http://groucho.gsfc.nasa.gov/Code_520/Code_522/Projects/TAE/Bulletin/TAE_Bulletin3.htm] Unix - Paradise Paradise is a set of Ada packages intended to provide an interface to the Unix operating system, and more specifically to the communication routines, that are accessed via file descriptors. It lets the Ada programmer use files, pipes, and sockets, as well as signals, error codes, environment variables, etc., using an interface that looks as much as possible like the C interface. Paradise supports multi-tasking: any input or output is blocking for the calling task only, and not for the entire process. Paradise is intended to be system-independant and compiler-independant; so far, it works on four environments: - SunOS 4.1 (Sparc) and SunAda (Verdix 6.1) compiler - SunOS 4.1 (Sparc) and TeleSoft 4.1.1 compiler - HP-UX (HP9000/700) and HP-Ada (Alsys) compiler - HP-UX (HP9000/700) and Verdix 6.3d compiler It is known not to work well on SunOS/Alsys, because of problems on signal handlers; For people who would like to port it to other environments, information on portability is displayed inside the code. A programmer's guide should appear in future versions. Send all comments, bug reports, patches to "paradise@cenatls.cena.dgac.fr" (Nicolas Courtel). [http://archive.adaic.com/tools/bindings/paradise/] Ada Binding to XModem and Kermit Network Protocols This is a set of Ada packages that implement the file transfer protocols only (for X_Modem and Kermit protocols). The documentation is complete and the implementation encourages reuse of this tool in a variety of ways.hpot [http://archive.adaic.com/tools/bindings/xmodem-kermit/] X-Windows - Motif These are the BCA/STARS Motif Ada bindings. Motif is an X-Windows based toolkit for user interface development. The BCA Motif Ada bindings are a binding to (not an implementation of): - the Motif widget (user interface object) set, and - a subset of the Motif functions You must have the Motif object code libraries to use this software. The bindings were developed using Motif version 1.0.1 and have not been tested under 1.1. [http://archive.adaic.com/tools/bindings/MOTIF/] X-Windows - X, Xlib, Xt, Motif This is a complete set of Ada Xlib/Xt/Motif bindings, and a set of examples. The Ada Xlib/Xt/Motif bindings require the existance of the C Xlib/Xt/Motif bindings. (Ie: the include files and the libraries are available). The actual bindings are pure Ada code, produced by tools written in Ada and C, with all the tools etc. in the tar file. The C tools are compiled using your system's Xlib, Xt, and Xm include files, and they use the information found there to produce Ada representation clauses, constants, etc. that exactly match the C representations of the structures, etc. This is how this kit can reliably generate bindings for a range of architectures, regardless of word-size, alignment-rules, etc. These bindings are for X11R4/Motif 1.1, X11R5/Motif 1.2 and DECMotif Extensions. These bindings are meant for DEC Ada 3.0 and later on OSF/1 and OpenVMS. They should work, or be easily modified to work, on many other Ada compilers and platforms. [http://archive.adaic.com/tools/bindings/Xlib-Xt-Xm-bindings/] X-Windows - Ada/X Toolkit This software package provides an Ada programmatic interface to a set of reusable user interface abstractions known as widgets. The software provides the full functionality of the M.I.T X Consortium Version 11 Release 4 X Window System. The software consists of three components: an Ada binding to the Xlib layer, an Ada implementation of the Xt Intrinsics layer, and an Ada widget library. The Ada binding to the Xlib layer upgrades the STARS Foundations Ada Xlib binding, and provides a protocol interface with a set of graphics drawing primitives. The Xt Intrinsics layer provides a policy-free mechanism for creating and managing user interface objects. User interface objects are contained in the widget library, which consists of a small set of commonly used user interface abstractions such as scroll bars and command buttons. This product was developed as part of the Software Technology for Adaptable, Reliable Systems (STARS) program, sponsored by the Advanced Research Projects Agency (ARPA). [http://archive.adaic.com/tools/bindings/X-toolkit/]
Customer Information Control System (CICS) The Customer Information Control System (CICS) is an IBM transation-processing system. This is an interface that binds Ada to the IBM CICS transaction-oriented applications. In addition, it provides SQL for future database applications to allow migration to Ada while retaining massive historical databases and existing functional software. [http://archive.adaic.com/tools/bindings/CICS] Distributed Computing Environment (DCE) The Distributed Computing Environment (DCE) is a standard of the Open Systems Foundation (OSF). It is an integrated set of services that provides the foundation for distributed computing in a heterogeneous computing environment. [http://archive.adaic.com/tools/bindings/DCE] Generic Package of Elementary Functions (GPEF) - Generic Elementary Math Functions These generic Ada packages provide a set of mathematical functions that conform to the SIGAda Numerics Working Group's proposed standard, which is a proposed secondary ISO standard. The package as specified consists of 29 functions, which can be classified into three families: exponential, trigonometric, and hyperbolic. The exponential family consists of 5 functions: Sqrt(x), Exp(x), X**Y, Log(X) and Log(x,Base). The trigonometric family consists of 16 functions: the four usual trig functions Sin(x), Cos(x), Tan(x), and Cot(x) and the four inverses Arcsin(x), Arccos(x), Arctan(y,x), and Arccot(x,y) constitute 8 of the 16. These 8 functions are approximations to the corresponding mathematical functions, with 2pi being the period. The proposed ISO standard also requires 8 other functions that allow the user to specify a period (e.g., 360.0). The calling sequences for the other 8 are Sin(x,cycle), Cos(x, cycle), and Arccot(y,x,cycle). Finally, the hyperbolic family consists of 8 functions: the commonly used Sinh(x), Cosh(x), Tanh(x), and Coth(x) and the corresponding inverses Arcsinh(x), Arccosh(x), Arctanh(x), and Arccoth(x). The code has comments defining usage and implementation details, plus an informative README file. Also included are test packages and drivers to test each of the functions. This product was developed as part of the Software Technology for Adaptable, Reliable Systems (STARS) program, sponsored by the Advanced Research Projects Agency (ARPA). [http://archive.adaic.com/tools/bindings/GPEF] GPEF - Generic Math Functions These Ada math packages implement the following generic packages specified by the ISO Numerics Rapporteur Group: generic_elementary_functions, generic_primitive_functions, generic_algebraic_functions, and math_constants. As with most software, this carries no guarantees. Single precision and double precision have been pretty well tested on an Apollo (Alsys) and a VAX (DEC). Longest_Float precision is mostly finished, but rough. This will also compile on VAX/Unix (Verdix), Apollo/SR10.2 (Verdix). This product was developed as part of the Software Technology for Adaptable, Reliable Systems (STARS) program, sponsored by the Advanced Research Projects Agency (ARPA). [http://archive.adaic.com/tools/bindings/GPEF/gmf-bindings] Computer Graphics/Graphical Kernel System This Ada software bundle implements the Graphical Kernel System (GKS), an internationally accepted standard for computer graphics recognized by the American National Standards Institute (ANSI) and the International Standardization Organization (ISO). The Graphical Kernel System provides an application programmer's interface, defining graphics functions at the logical device level rather than the hardware device level. Using a GKS implementation, an applications programmer can write graphics programs without having to learn the scheme for describing graphics on a particular hardware device. This GKS interface allows the application programmer to make Ada calls to a wide variety of graphics and plotting routines, and supports several types of graphics terminals. This product was developed as part of the Software Technology for Adaptable, Reliable Systems (STARS) program, sponsored by the Advanced Research Projects Agency (ARPA). [http://archive.adaic.com/tools/bindings/GKS] Information Resource Dictionary System (IRDS) This document is an editor's draft of the Information Resource Dictionary System (IRDS) Services Interface, dated 3 July 1992, ISO/IEC 10728: 1993 (E), Draft International Standard. It is for the purpose of review by participants in the SC21 editing committee. This draft standard defines an interface to describe and control an enterprise's information resources. IRDS interfaces to an SQL type of database using services in the form of function and procedure calls. A draft Ada binding to IRDS has been submitted to the ISO IRDS Rapporteur Group as a proposed Annex D to ISO/IEC 10728. It is currently a working draft. [archive.adaic.com/tools/bindings/IRDS] Microsoft Windows - Win32Ada Binding Win32Ada is a complete thin binding to Win32, the 32-bit interface to Microsoft Windows 95 And Microsoft Windows NT. (A subset of Win32 (Win32S) is supported on Windows 3.1.) Win32Ada's capabilities include: creation of processes, windows, and menus; graphics, keyboard, and mouse control; MAPI (mail); Dynamic Data Exchange (DDE); Object Linking and Embedding (OLE), compound documents; video, sound, and multimedia; and Open Data Base Connectivity (ODBC). That is, everything that is available to a C program. At present, distribution arrangements have not yet been finalized. In the interim, those interested in obtaining copies may contact Dennis Struble at Intermetrics, Inc., for further information. Dennis Struble Intermetrics, Inc. 733 Concord Avenue Cambridge, MA 02138 tel: 617/661-1840 fax: 617/868-2843 MIL-STD 1553 Data Bus - Generic Avionics Data Bus Tool Kit (GADBTK) This is the source code for the Generic Avionics Data Bus Tool Kit (GADBTK), which is part of the Ada Joint Program Office's Ada Technology Insertion Program (ATIP) binding project. The GADBTK project is intended to provide a strong Ada software binding to the Military Standard 1553 data bus. The bus is used for time multiplex data communications between different sensor and computer subsystems on many current military platforms. The associated documentation is available through the Defense Technical Information Center (DTIC) and the National Technical Information Service (NTIS). [http://archive.adaic.com/tools/bindings/gadbtk] OS2 - Thin Ada 95 Binding to the OS/2 API The OS2 package provides thin, direct Ada 95 bindings to the most important sections of OS/2's GUI API, i.e. Win, GPI, Dev, Spl, DDF, Prf, Drg. 1.) Use the BUILD command file to compile the bindings and create the sample program (WINTEST). 2.) Note that some names and types are not exactly identical to the CAPI definitions. Declarations like "HWND hwnd", anonymous arrays as structure members, pointers etc. had to be changed. 3.) Support for other OS/2 APIs than those related to the Presentation Manager has been dropped. The bindings have been created using a customized CBIND6 and tested with GNAT 3.05 on OS/2 Warp v3. The CBIND utility can be obtained from ftp://rational.com/public/tools/cbind/, the GNAT Ada'95 compiler is at ftp://ftp.cs.nyu.edu/pub/gnat/. The base file was OS2EMX.H (part of gcc/emx), thus a copy of the GNU Library General Public License is included with the distribution archive. (A personal note: I still don't understand why all this hardcore legal stuff is necessary and why every piece of code has to include a lengthy all-capitals disclaimer message.) All kinds of feedback are appreciated. POC: Klaus A. Brunner e-mail: kbrun@ibm.net [ftp://cs.nyu.edu/pub/gnat/contrib/os2/bindings/] Package CGI "Package CGI" is an Ada 95 interface to the "Common Gateway Interface" (CGI). This package makes it easier to create Ada programs that can be invoked by World-Wide-Web (WWW) HTTP servers using the standard CGI interface. Using it, you can create Ada programs that perform queries or other processing by request from a WWW user. This package is copyright (C) 1995 David A. Wheeler (wheeler@ida.org). You are free to use it in anything you wish without restriction or payment, but please provide credit if you use this package. This Ada package provides two data access approaches from the CGI: 1.) As an associative array; simply provide the key name (as a string) and the value associated with that key will be returned. 2.) As a sequence of key-value pairs, indexed from 1 to Argument_Count. This access approach is similar to the Ada library Ada.Command_Line. The main access routines support both Ada 95 types String and Unbounded_String. [http://wuarchive.wustl.edu/languages/ada/swcomps/cgi/cgi.html] Paradox Dbms_Template represents a simple DBMS class. It is single user, but it can be extended for networks. It was created as a binding to Paradox Engine 1.0. It can serve as a binding to other DBMS's such as dBASE and Clipper by purchasing a C library for accessing other DBMS's and changing the body of Dbms_Template. This binding requires Paradox Engine and Microsoft's C library (large model). [http://archive.adaic.com/tools/bindings/paradox] Portable Common Tool Environment (PCTE) This is the Ada Portable Common Tool Environment (PCTE) binding (AdaPCTE). It provides Ada applications access to a PCTE object base as defined by the European Computer Manufacturers Association (ECMA) Ada PCTE specification (Standard ECMA-162 Ada Language Binding, December 1991). This "alpha" release provides a minimal set of interfaces to permit Ada developers to experiment with and evaluate PCTE for use in future Ada applications. It is expected that later releases will complete the binding. Since no conforming implementations of ECMA PCTE existed as defined in Standard ECMA-149, AdaPCTE ws implemented on GIE Emeraude's PCTE V12.2 Fix 7 or V12.3. Because only a subset of the ECMA PCTE Ada specification had been implemented for the 0.2 release, and because ECMA PCTE functionality differs somewhat from Emeraude PCTE functionality, the complete functionality of Emeraude PCTE is not available to Ada applications using these bindings. [http://archive.adaic.com/tools/bindings/PCTE] POSIX - Ada 83 The following statement is provided by the IEEE and governs the use of this code: These package specifications were extracted from IEEE Std 1003.5-1992, IEEE Standard for Information Technology - POSIX Ada Language Interfaces - Part 1: Binding System Application Program Interface, copyright (c) 1992 by the Institute of Electrical and Electronics Engineers, Inc. These package specifications represent only a portion of the document and are not to be interpreteted as the approved consensus standard. The IEEE Std 1003.5-1992 must be used in conjunction with these package specifications in order to claim conformance. The IEEE takes no responsibility for and will assume no liability for damages resulting from the reader's misinpretation of said information resulting from its out of context nature. To order copies of the IEEE Std 1003.5-1992, please contact the IEEE Service Center at 445 Hoes Lane, PO Box 1331, Piscataway, NJ 08855-1331; via phone at 1-800-678-IEEE, 908-981-1393; or via fax at 908-981-9667. Note that these specifications are incomplete, in that the standard identifies some declarations as implementation-defined. In addition, no package bodies are provided. This standard was developed by IEEE Working Group P1003.5. For more information on this group, contact the Chairman, James Lonjers, lonjers@vfl.paramax.com or 805/987-9457. Formal requests for interpretations of this standard should be addressed to the IEEE, as specified in the document. An e-mail list discussing ongoing POSIX/Ada binding work is available as "posix-ada@verdix.com". Send e-mail to "posixadarequest@verdix.com" to be included on the list. Current work in IEEE P1003.5 consists of the Ada Binding to POSIX Real-Time Extensions (IEEE Project P1003.20) and current interpretations of IEEE Std 1003.5-1992. [http://archive.adaic.com/tools/bindings/POSIX/ada83/] POSIX - Ada 95 These are POSIX .5 library specs. The library is under development, and this is a work-in-progress version release. A work-in-progress implementation of the package bodies should also be available shortly. (For more information via the World Wide Web, look into the PART Home page: "http://www.cs.fsu.edu/~doh/") For questions and suggestions, e-mail can be sent to part@ada.cs.fsu.edu. [http://archive.adaic.com/tools/bindings/POSIX/ada95/] POSIX Ada Run-Time System Libraries (PART) This is a pointer file to the POSIX Ada Run-Time System Libraries (PART), which contains code from one of the projects supported by the Ada Joint Program Office's FY91 Ada Technology Insertion Program (ATIP). PART is available to the public from Florida State University (FSU) for non-commercial use. See copyright note near end. PART can be obtained by anonymous FTP from FSU's ftp server (ftp.cs.fsu.edu). The release there is version 1.2 of the POSIX Ada Run-Time System Library (PART) using a CARTS interface [3]. It is implemented over the POSIX 1003.4a Threads Extension (Pthreads) [1], and requires access to an interface compliant with that standard. The purpose of this release of PART is to demonstrate the feasibility of implementing an Ada '83 run-time system over POSIX threads, and disclose the full details of one such implementation. By mapping Ada tasks onto POSIX threads, this approach should enhance the portability of Ada runtime systems and provide a platform for exploiting shared-memory multiprocessors. [ftp://ftp.cs.fsu.edu/pub/PART] SQL - A Prototype Binding of ANSI-Standard SQL to Ada Supporting the SAME Methodology This is the final release of the Computer Software Configuration Item (CSCI) identified as the IBM STARS Prototype Binding of Ansi-Standard SQL to Ada Supporting the SQL Ada Module Extensions (SAME) Methodology. This software was developed for the DoD's Software Technology for Adaptable, Reliable Systems (STARS) Program. The primary purpose of the Binding of ANSI-Standard SQL to Ada is to provide access to relational data bases that support SQL from within an Ada program. The secondary purpose of this project is to provide this access by implementing the SAME approach to data base interface as described in Guidelines for Use of the SAME, Technical Report CMU/SEI-89-TR-16. SAME is a specialization of the modular approach for implementing an interface between a programming language (in this case Ada) and a DBMS whose data manipulation language is SQL. SAME is an extension of the existing SQL module language standard meant to maximize Ada language capabilities. SAME provides an abstraction/mapping between an Ada program's objects and the weakly typed SQL concrete types through a layer that exists between the application program and the actual interface to the data base. To use SAME without any automated support would be a time consuming task. This project will provide such automated support. [http://archive.adaic.com/tools/bindings/SQL] SQL - SAMeDL Development Environment This is a release of the Intermetrics SAMeDL Development Environment. This software has been provided as part of a research and development effort under the Ada Technology Insertion Program (ATIP) in an effort to investigate and promote Ada/SQL interfacing technology, namely SAMeDL, within the Ada community. Although all attempts have been made to make this software as robust as possible, it is not of production quality. Deficiencies and problems are inherent and should not be used as a means for negatively judging the merits of SAMeDL. The challenges pertaining to the use of Ada and SQL in a well-engineered information system led to the formation of the SQL Ada Module Extension Design Committee (SAME-DC) at the Software Engineering Institute (SEI). The committee developed the SQL Ada Module Extension (SAME) Methodology to support and extend the modular approach to using Ada and SQL in database applications. The language which is used to implement SAME is the SQL Ada Module Description Language, or SAMeDL. Using the SAME methodology requires that SQL statements be separated from the Ada application code, and encapsulated in separate modules. The SQL statements are not embedded in the Ada packages, thus isolating the Ada application from the DBMS design and implementation. SAMeDL is designed to facilitate the construction of Ada database applications that use the SAME methodology. [http://archive.adaic.com/tools/bindings/SAMeDL/] TCP/IP - Secure File Transfer Program (SFTP) The Secure File Transfer Program provides a means of transferring sensitive information from one computer system to another. This system implements Transmission Control Protocol (TCP) and conforms to RFC:793. TCP provides a reliable communication between pairs of processes in logically distinct hosts on networks and sets of interconnected networks. The TCP resides in the transport layer of the DoD Internet Model. The system encapsulates messages received from the utility layer protocols, which reside directly above, and passes the packet to the Internet layer (communicates with the Internet Protocol (IP)). The TCP supports the following functions: connection-oriented, reliable data transfer, ordered data transfer delivery, full-duplex, and flow control. This product was developed as part of the Software Technology for Adaptable, Reliable Systems (STARS) program, sponsored by the Advanced Research Projects Agency (ARPA). [http://archive.adaic.com/tools/SFTP/] Transportable Applications Enviornment (TAE) The Transportable Applications Environment (TAE) Project is a state-of-the-art user interface development and management system, that provides services and tools for developing and managing graphically-oriented user interfaces, as well as providing common application executive services. The main component of TAE Plus is a WYSIWYG user interface designer's Workbench that allows an application developer to interactively construct a graphical user interface (GUI) by arranging and manipulating TAE Plus "interaction objects". These interaction objects include both user entry items (e.g., radio buttons, text keyin, icon buttons) and real-time dynamic data objects (e.g., dials, sliders, gauges, and discrete picture sequences). The Workbench also provides the capability to dynamically define "connections" between interaction objects, as well as to rehearse the designed GUI dialogue. The TAE Plus Workbench is a tool for building user interfaces. It is designed for both non-programmers and programmers. Knowledge of OSF/Motif or the X Window System is not necessary. New TAE Plus users quickly master the intuitive operation of the Workbench and can build working interfaces in a matter of hours - often without consulting manuals. As an aid to bridging the gap between the development and runtime environments, the Workbench provides the option of generating a skeleton source code program (in C, ANSI C, C++, and Ada) which fully displays and manages the designed GUI. This Workbench-generated code includes the calls to the TAE Plus runtime services and the Window Programming Tools (WPTs). The separation of the user interface from the application code allows changes to be made easily to an application's GUI without recompiling or relinking the software, and also hides the complexities of the underlying X and Motif windowing services from the application. [http://groucho.gsfc.nasa.gov/Code_520/Code_522/Projects/TAE/Bulletin/TAE_Bulletin3.htm] Unix - Paradise Paradise is a set of Ada packages intended to provide an interface to the Unix operating system, and more specifically to the communication routines, that are accessed via file descriptors. It lets the Ada programmer use files, pipes, and sockets, as well as signals, error codes, environment variables, etc., using an interface that looks as much as possible like the C interface. Paradise supports multi-tasking: any input or output is blocking for the calling task only, and not for the entire process. Paradise is intended to be system-independant and compiler-independant; so far, it works on four environments: - SunOS 4.1 (Sparc) and SunAda (Verdix 6.1) compiler - SunOS 4.1 (Sparc) and TeleSoft 4.1.1 compiler - HP-UX (HP9000/700) and HP-Ada (Alsys) compiler - HP-UX (HP9000/700) and Verdix 6.3d compiler It is known not to work well on SunOS/Alsys, because of problems on signal handlers; For people who would like to port it to other environments, information on portability is displayed inside the code. A programmer's guide should appear in future versions. Send all comments, bug reports, patches to "paradise@cenatls.cena.dgac.fr" (Nicolas Courtel). [http://archive.adaic.com/tools/bindings/paradise/] Ada Binding to XModem and Kermit Network Protocols This is a set of Ada packages that implement the file transfer protocols only (for X_Modem and Kermit protocols). The documentation is complete and the implementation encourages reuse of this tool in a variety of ways.hpot [http://archive.adaic.com/tools/bindings/xmodem-kermit/] X-Windows - Motif These are the BCA/STARS Motif Ada bindings. Motif is an X-Windows based toolkit for user interface development. The BCA Motif Ada bindings are a binding to (not an implementation of): - the Motif widget (user interface object) set, and - a subset of the Motif functions You must have the Motif object code libraries to use this software. The bindings were developed using Motif version 1.0.1 and have not been tested under 1.1. [http://archive.adaic.com/tools/bindings/MOTIF/] X-Windows - X, Xlib, Xt, Motif This is a complete set of Ada Xlib/Xt/Motif bindings, and a set of examples. The Ada Xlib/Xt/Motif bindings require the existance of the C Xlib/Xt/Motif bindings. (Ie: the include files and the libraries are available). The actual bindings are pure Ada code, produced by tools written in Ada and C, with all the tools etc. in the tar file. The C tools are compiled using your system's Xlib, Xt, and Xm include files, and they use the information found there to produce Ada representation clauses, constants, etc. that exactly match the C representations of the structures, etc. This is how this kit can reliably generate bindings for a range of architectures, regardless of word-size, alignment-rules, etc. These bindings are for X11R4/Motif 1.1, X11R5/Motif 1.2 and DECMotif Extensions. These bindings are meant for DEC Ada 3.0 and later on OSF/1 and OpenVMS. They should work, or be easily modified to work, on many other Ada compilers and platforms. [http://archive.adaic.com/tools/bindings/Xlib-Xt-Xm-bindings/] X-Windows - Ada/X Toolkit This software package provides an Ada programmatic interface to a set of reusable user interface abstractions known as widgets. The software provides the full functionality of the M.I.T X Consortium Version 11 Release 4 X Window System. The software consists of three components: an Ada binding to the Xlib layer, an Ada implementation of the Xt Intrinsics layer, and an Ada widget library. The Ada binding to the Xlib layer upgrades the STARS Foundations Ada Xlib binding, and provides a protocol interface with a set of graphics drawing primitives. The Xt Intrinsics layer provides a policy-free mechanism for creating and managing user interface objects. User interface objects are contained in the widget library, which consists of a small set of commonly used user interface abstractions such as scroll bars and command buttons. This product was developed as part of the Software Technology for Adaptable, Reliable Systems (STARS) program, sponsored by the Advanced Research Projects Agency (ARPA). [http://archive.adaic.com/tools/bindings/X-toolkit/]
This is an interface that binds Ada to the IBM CICS transaction-oriented applications. In addition, it provides SQL for future database applications to allow migration to Ada while retaining massive historical databases and existing functional software.
[http://archive.adaic.com/tools/bindings/CICS]
Distributed Computing Environment (DCE) The Distributed Computing Environment (DCE) is a standard of the Open Systems Foundation (OSF). It is an integrated set of services that provides the foundation for distributed computing in a heterogeneous computing environment. [http://archive.adaic.com/tools/bindings/DCE] Generic Package of Elementary Functions (GPEF) - Generic Elementary Math Functions These generic Ada packages provide a set of mathematical functions that conform to the SIGAda Numerics Working Group's proposed standard, which is a proposed secondary ISO standard. The package as specified consists of 29 functions, which can be classified into three families: exponential, trigonometric, and hyperbolic. The exponential family consists of 5 functions: Sqrt(x), Exp(x), X**Y, Log(X) and Log(x,Base). The trigonometric family consists of 16 functions: the four usual trig functions Sin(x), Cos(x), Tan(x), and Cot(x) and the four inverses Arcsin(x), Arccos(x), Arctan(y,x), and Arccot(x,y) constitute 8 of the 16. These 8 functions are approximations to the corresponding mathematical functions, with 2pi being the period. The proposed ISO standard also requires 8 other functions that allow the user to specify a period (e.g., 360.0). The calling sequences for the other 8 are Sin(x,cycle), Cos(x, cycle), and Arccot(y,x,cycle). Finally, the hyperbolic family consists of 8 functions: the commonly used Sinh(x), Cosh(x), Tanh(x), and Coth(x) and the corresponding inverses Arcsinh(x), Arccosh(x), Arctanh(x), and Arccoth(x). The code has comments defining usage and implementation details, plus an informative README file. Also included are test packages and drivers to test each of the functions. This product was developed as part of the Software Technology for Adaptable, Reliable Systems (STARS) program, sponsored by the Advanced Research Projects Agency (ARPA). [http://archive.adaic.com/tools/bindings/GPEF] GPEF - Generic Math Functions These Ada math packages implement the following generic packages specified by the ISO Numerics Rapporteur Group: generic_elementary_functions, generic_primitive_functions, generic_algebraic_functions, and math_constants. As with most software, this carries no guarantees. Single precision and double precision have been pretty well tested on an Apollo (Alsys) and a VAX (DEC). Longest_Float precision is mostly finished, but rough. This will also compile on VAX/Unix (Verdix), Apollo/SR10.2 (Verdix). This product was developed as part of the Software Technology for Adaptable, Reliable Systems (STARS) program, sponsored by the Advanced Research Projects Agency (ARPA). [http://archive.adaic.com/tools/bindings/GPEF/gmf-bindings] Computer Graphics/Graphical Kernel System This Ada software bundle implements the Graphical Kernel System (GKS), an internationally accepted standard for computer graphics recognized by the American National Standards Institute (ANSI) and the International Standardization Organization (ISO). The Graphical Kernel System provides an application programmer's interface, defining graphics functions at the logical device level rather than the hardware device level. Using a GKS implementation, an applications programmer can write graphics programs without having to learn the scheme for describing graphics on a particular hardware device. This GKS interface allows the application programmer to make Ada calls to a wide variety of graphics and plotting routines, and supports several types of graphics terminals. This product was developed as part of the Software Technology for Adaptable, Reliable Systems (STARS) program, sponsored by the Advanced Research Projects Agency (ARPA). [http://archive.adaic.com/tools/bindings/GKS] Information Resource Dictionary System (IRDS) This document is an editor's draft of the Information Resource Dictionary System (IRDS) Services Interface, dated 3 July 1992, ISO/IEC 10728: 1993 (E), Draft International Standard. It is for the purpose of review by participants in the SC21 editing committee. This draft standard defines an interface to describe and control an enterprise's information resources. IRDS interfaces to an SQL type of database using services in the form of function and procedure calls. A draft Ada binding to IRDS has been submitted to the ISO IRDS Rapporteur Group as a proposed Annex D to ISO/IEC 10728. It is currently a working draft. [archive.adaic.com/tools/bindings/IRDS] Microsoft Windows - Win32Ada Binding Win32Ada is a complete thin binding to Win32, the 32-bit interface to Microsoft Windows 95 And Microsoft Windows NT. (A subset of Win32 (Win32S) is supported on Windows 3.1.) Win32Ada's capabilities include: creation of processes, windows, and menus; graphics, keyboard, and mouse control; MAPI (mail); Dynamic Data Exchange (DDE); Object Linking and Embedding (OLE), compound documents; video, sound, and multimedia; and Open Data Base Connectivity (ODBC). That is, everything that is available to a C program. At present, distribution arrangements have not yet been finalized. In the interim, those interested in obtaining copies may contact Dennis Struble at Intermetrics, Inc., for further information. Dennis Struble Intermetrics, Inc. 733 Concord Avenue Cambridge, MA 02138 tel: 617/661-1840 fax: 617/868-2843 MIL-STD 1553 Data Bus - Generic Avionics Data Bus Tool Kit (GADBTK) This is the source code for the Generic Avionics Data Bus Tool Kit (GADBTK), which is part of the Ada Joint Program Office's Ada Technology Insertion Program (ATIP) binding project. The GADBTK project is intended to provide a strong Ada software binding to the Military Standard 1553 data bus. The bus is used for time multiplex data communications between different sensor and computer subsystems on many current military platforms. The associated documentation is available through the Defense Technical Information Center (DTIC) and the National Technical Information Service (NTIS). [http://archive.adaic.com/tools/bindings/gadbtk] OS2 - Thin Ada 95 Binding to the OS/2 API The OS2 package provides thin, direct Ada 95 bindings to the most important sections of OS/2's GUI API, i.e. Win, GPI, Dev, Spl, DDF, Prf, Drg. 1.) Use the BUILD command file to compile the bindings and create the sample program (WINTEST). 2.) Note that some names and types are not exactly identical to the CAPI definitions. Declarations like "HWND hwnd", anonymous arrays as structure members, pointers etc. had to be changed. 3.) Support for other OS/2 APIs than those related to the Presentation Manager has been dropped. The bindings have been created using a customized CBIND6 and tested with GNAT 3.05 on OS/2 Warp v3. The CBIND utility can be obtained from ftp://rational.com/public/tools/cbind/, the GNAT Ada'95 compiler is at ftp://ftp.cs.nyu.edu/pub/gnat/. The base file was OS2EMX.H (part of gcc/emx), thus a copy of the GNU Library General Public License is included with the distribution archive. (A personal note: I still don't understand why all this hardcore legal stuff is necessary and why every piece of code has to include a lengthy all-capitals disclaimer message.) All kinds of feedback are appreciated. POC: Klaus A. Brunner e-mail: kbrun@ibm.net [ftp://cs.nyu.edu/pub/gnat/contrib/os2/bindings/] Package CGI "Package CGI" is an Ada 95 interface to the "Common Gateway Interface" (CGI). This package makes it easier to create Ada programs that can be invoked by World-Wide-Web (WWW) HTTP servers using the standard CGI interface. Using it, you can create Ada programs that perform queries or other processing by request from a WWW user. This package is copyright (C) 1995 David A. Wheeler (wheeler@ida.org). You are free to use it in anything you wish without restriction or payment, but please provide credit if you use this package. This Ada package provides two data access approaches from the CGI: 1.) As an associative array; simply provide the key name (as a string) and the value associated with that key will be returned. 2.) As a sequence of key-value pairs, indexed from 1 to Argument_Count. This access approach is similar to the Ada library Ada.Command_Line. The main access routines support both Ada 95 types String and Unbounded_String. [http://wuarchive.wustl.edu/languages/ada/swcomps/cgi/cgi.html] Paradox Dbms_Template represents a simple DBMS class. It is single user, but it can be extended for networks. It was created as a binding to Paradox Engine 1.0. It can serve as a binding to other DBMS's such as dBASE and Clipper by purchasing a C library for accessing other DBMS's and changing the body of Dbms_Template. This binding requires Paradox Engine and Microsoft's C library (large model). [http://archive.adaic.com/tools/bindings/paradox] Portable Common Tool Environment (PCTE) This is the Ada Portable Common Tool Environment (PCTE) binding (AdaPCTE). It provides Ada applications access to a PCTE object base as defined by the European Computer Manufacturers Association (ECMA) Ada PCTE specification (Standard ECMA-162 Ada Language Binding, December 1991). This "alpha" release provides a minimal set of interfaces to permit Ada developers to experiment with and evaluate PCTE for use in future Ada applications. It is expected that later releases will complete the binding. Since no conforming implementations of ECMA PCTE existed as defined in Standard ECMA-149, AdaPCTE ws implemented on GIE Emeraude's PCTE V12.2 Fix 7 or V12.3. Because only a subset of the ECMA PCTE Ada specification had been implemented for the 0.2 release, and because ECMA PCTE functionality differs somewhat from Emeraude PCTE functionality, the complete functionality of Emeraude PCTE is not available to Ada applications using these bindings. [http://archive.adaic.com/tools/bindings/PCTE] POSIX - Ada 83 The following statement is provided by the IEEE and governs the use of this code: These package specifications were extracted from IEEE Std 1003.5-1992, IEEE Standard for Information Technology - POSIX Ada Language Interfaces - Part 1: Binding System Application Program Interface, copyright (c) 1992 by the Institute of Electrical and Electronics Engineers, Inc. These package specifications represent only a portion of the document and are not to be interpreteted as the approved consensus standard. The IEEE Std 1003.5-1992 must be used in conjunction with these package specifications in order to claim conformance. The IEEE takes no responsibility for and will assume no liability for damages resulting from the reader's misinpretation of said information resulting from its out of context nature. To order copies of the IEEE Std 1003.5-1992, please contact the IEEE Service Center at 445 Hoes Lane, PO Box 1331, Piscataway, NJ 08855-1331; via phone at 1-800-678-IEEE, 908-981-1393; or via fax at 908-981-9667. Note that these specifications are incomplete, in that the standard identifies some declarations as implementation-defined. In addition, no package bodies are provided. This standard was developed by IEEE Working Group P1003.5. For more information on this group, contact the Chairman, James Lonjers, lonjers@vfl.paramax.com or 805/987-9457. Formal requests for interpretations of this standard should be addressed to the IEEE, as specified in the document. An e-mail list discussing ongoing POSIX/Ada binding work is available as "posix-ada@verdix.com". Send e-mail to "posixadarequest@verdix.com" to be included on the list. Current work in IEEE P1003.5 consists of the Ada Binding to POSIX Real-Time Extensions (IEEE Project P1003.20) and current interpretations of IEEE Std 1003.5-1992. [http://archive.adaic.com/tools/bindings/POSIX/ada83/] POSIX - Ada 95 These are POSIX .5 library specs. The library is under development, and this is a work-in-progress version release. A work-in-progress implementation of the package bodies should also be available shortly. (For more information via the World Wide Web, look into the PART Home page: "http://www.cs.fsu.edu/~doh/") For questions and suggestions, e-mail can be sent to part@ada.cs.fsu.edu. [http://archive.adaic.com/tools/bindings/POSIX/ada95/] POSIX Ada Run-Time System Libraries (PART) This is a pointer file to the POSIX Ada Run-Time System Libraries (PART), which contains code from one of the projects supported by the Ada Joint Program Office's FY91 Ada Technology Insertion Program (ATIP). PART is available to the public from Florida State University (FSU) for non-commercial use. See copyright note near end. PART can be obtained by anonymous FTP from FSU's ftp server (ftp.cs.fsu.edu). The release there is version 1.2 of the POSIX Ada Run-Time System Library (PART) using a CARTS interface [3]. It is implemented over the POSIX 1003.4a Threads Extension (Pthreads) [1], and requires access to an interface compliant with that standard. The purpose of this release of PART is to demonstrate the feasibility of implementing an Ada '83 run-time system over POSIX threads, and disclose the full details of one such implementation. By mapping Ada tasks onto POSIX threads, this approach should enhance the portability of Ada runtime systems and provide a platform for exploiting shared-memory multiprocessors. [ftp://ftp.cs.fsu.edu/pub/PART] SQL - A Prototype Binding of ANSI-Standard SQL to Ada Supporting the SAME Methodology This is the final release of the Computer Software Configuration Item (CSCI) identified as the IBM STARS Prototype Binding of Ansi-Standard SQL to Ada Supporting the SQL Ada Module Extensions (SAME) Methodology. This software was developed for the DoD's Software Technology for Adaptable, Reliable Systems (STARS) Program. The primary purpose of the Binding of ANSI-Standard SQL to Ada is to provide access to relational data bases that support SQL from within an Ada program. The secondary purpose of this project is to provide this access by implementing the SAME approach to data base interface as described in Guidelines for Use of the SAME, Technical Report CMU/SEI-89-TR-16. SAME is a specialization of the modular approach for implementing an interface between a programming language (in this case Ada) and a DBMS whose data manipulation language is SQL. SAME is an extension of the existing SQL module language standard meant to maximize Ada language capabilities. SAME provides an abstraction/mapping between an Ada program's objects and the weakly typed SQL concrete types through a layer that exists between the application program and the actual interface to the data base. To use SAME without any automated support would be a time consuming task. This project will provide such automated support. [http://archive.adaic.com/tools/bindings/SQL] SQL - SAMeDL Development Environment This is a release of the Intermetrics SAMeDL Development Environment. This software has been provided as part of a research and development effort under the Ada Technology Insertion Program (ATIP) in an effort to investigate and promote Ada/SQL interfacing technology, namely SAMeDL, within the Ada community. Although all attempts have been made to make this software as robust as possible, it is not of production quality. Deficiencies and problems are inherent and should not be used as a means for negatively judging the merits of SAMeDL. The challenges pertaining to the use of Ada and SQL in a well-engineered information system led to the formation of the SQL Ada Module Extension Design Committee (SAME-DC) at the Software Engineering Institute (SEI). The committee developed the SQL Ada Module Extension (SAME) Methodology to support and extend the modular approach to using Ada and SQL in database applications. The language which is used to implement SAME is the SQL Ada Module Description Language, or SAMeDL. Using the SAME methodology requires that SQL statements be separated from the Ada application code, and encapsulated in separate modules. The SQL statements are not embedded in the Ada packages, thus isolating the Ada application from the DBMS design and implementation. SAMeDL is designed to facilitate the construction of Ada database applications that use the SAME methodology. [http://archive.adaic.com/tools/bindings/SAMeDL/] TCP/IP - Secure File Transfer Program (SFTP) The Secure File Transfer Program provides a means of transferring sensitive information from one computer system to another. This system implements Transmission Control Protocol (TCP) and conforms to RFC:793. TCP provides a reliable communication between pairs of processes in logically distinct hosts on networks and sets of interconnected networks. The TCP resides in the transport layer of the DoD Internet Model. The system encapsulates messages received from the utility layer protocols, which reside directly above, and passes the packet to the Internet layer (communicates with the Internet Protocol (IP)). The TCP supports the following functions: connection-oriented, reliable data transfer, ordered data transfer delivery, full-duplex, and flow control. This product was developed as part of the Software Technology for Adaptable, Reliable Systems (STARS) program, sponsored by the Advanced Research Projects Agency (ARPA). [http://archive.adaic.com/tools/SFTP/] Transportable Applications Enviornment (TAE) The Transportable Applications Environment (TAE) Project is a state-of-the-art user interface development and management system, that provides services and tools for developing and managing graphically-oriented user interfaces, as well as providing common application executive services. The main component of TAE Plus is a WYSIWYG user interface designer's Workbench that allows an application developer to interactively construct a graphical user interface (GUI) by arranging and manipulating TAE Plus "interaction objects". These interaction objects include both user entry items (e.g., radio buttons, text keyin, icon buttons) and real-time dynamic data objects (e.g., dials, sliders, gauges, and discrete picture sequences). The Workbench also provides the capability to dynamically define "connections" between interaction objects, as well as to rehearse the designed GUI dialogue. The TAE Plus Workbench is a tool for building user interfaces. It is designed for both non-programmers and programmers. Knowledge of OSF/Motif or the X Window System is not necessary. New TAE Plus users quickly master the intuitive operation of the Workbench and can build working interfaces in a matter of hours - often without consulting manuals. As an aid to bridging the gap between the development and runtime environments, the Workbench provides the option of generating a skeleton source code program (in C, ANSI C, C++, and Ada) which fully displays and manages the designed GUI. This Workbench-generated code includes the calls to the TAE Plus runtime services and the Window Programming Tools (WPTs). The separation of the user interface from the application code allows changes to be made easily to an application's GUI without recompiling or relinking the software, and also hides the complexities of the underlying X and Motif windowing services from the application. [http://groucho.gsfc.nasa.gov/Code_520/Code_522/Projects/TAE/Bulletin/TAE_Bulletin3.htm] Unix - Paradise Paradise is a set of Ada packages intended to provide an interface to the Unix operating system, and more specifically to the communication routines, that are accessed via file descriptors. It lets the Ada programmer use files, pipes, and sockets, as well as signals, error codes, environment variables, etc., using an interface that looks as much as possible like the C interface. Paradise supports multi-tasking: any input or output is blocking for the calling task only, and not for the entire process. Paradise is intended to be system-independant and compiler-independant; so far, it works on four environments: - SunOS 4.1 (Sparc) and SunAda (Verdix 6.1) compiler - SunOS 4.1 (Sparc) and TeleSoft 4.1.1 compiler - HP-UX (HP9000/700) and HP-Ada (Alsys) compiler - HP-UX (HP9000/700) and Verdix 6.3d compiler It is known not to work well on SunOS/Alsys, because of problems on signal handlers; For people who would like to port it to other environments, information on portability is displayed inside the code. A programmer's guide should appear in future versions. Send all comments, bug reports, patches to "paradise@cenatls.cena.dgac.fr" (Nicolas Courtel). [http://archive.adaic.com/tools/bindings/paradise/] Ada Binding to XModem and Kermit Network Protocols This is a set of Ada packages that implement the file transfer protocols only (for X_Modem and Kermit protocols). The documentation is complete and the implementation encourages reuse of this tool in a variety of ways.hpot [http://archive.adaic.com/tools/bindings/xmodem-kermit/] X-Windows - Motif These are the BCA/STARS Motif Ada bindings. Motif is an X-Windows based toolkit for user interface development. The BCA Motif Ada bindings are a binding to (not an implementation of): - the Motif widget (user interface object) set, and - a subset of the Motif functions You must have the Motif object code libraries to use this software. The bindings were developed using Motif version 1.0.1 and have not been tested under 1.1. [http://archive.adaic.com/tools/bindings/MOTIF/] X-Windows - X, Xlib, Xt, Motif This is a complete set of Ada Xlib/Xt/Motif bindings, and a set of examples. The Ada Xlib/Xt/Motif bindings require the existance of the C Xlib/Xt/Motif bindings. (Ie: the include files and the libraries are available). The actual bindings are pure Ada code, produced by tools written in Ada and C, with all the tools etc. in the tar file. The C tools are compiled using your system's Xlib, Xt, and Xm include files, and they use the information found there to produce Ada representation clauses, constants, etc. that exactly match the C representations of the structures, etc. This is how this kit can reliably generate bindings for a range of architectures, regardless of word-size, alignment-rules, etc. These bindings are for X11R4/Motif 1.1, X11R5/Motif 1.2 and DECMotif Extensions. These bindings are meant for DEC Ada 3.0 and later on OSF/1 and OpenVMS. They should work, or be easily modified to work, on many other Ada compilers and platforms. [http://archive.adaic.com/tools/bindings/Xlib-Xt-Xm-bindings/] X-Windows - Ada/X Toolkit This software package provides an Ada programmatic interface to a set of reusable user interface abstractions known as widgets. The software provides the full functionality of the M.I.T X Consortium Version 11 Release 4 X Window System. The software consists of three components: an Ada binding to the Xlib layer, an Ada implementation of the Xt Intrinsics layer, and an Ada widget library. The Ada binding to the Xlib layer upgrades the STARS Foundations Ada Xlib binding, and provides a protocol interface with a set of graphics drawing primitives. The Xt Intrinsics layer provides a policy-free mechanism for creating and managing user interface objects. User interface objects are contained in the widget library, which consists of a small set of commonly used user interface abstractions such as scroll bars and command buttons. This product was developed as part of the Software Technology for Adaptable, Reliable Systems (STARS) program, sponsored by the Advanced Research Projects Agency (ARPA). [http://archive.adaic.com/tools/bindings/X-toolkit/]
[http://archive.adaic.com/tools/bindings/DCE]
Generic Package of Elementary Functions (GPEF) - Generic Elementary Math Functions These generic Ada packages provide a set of mathematical functions that conform to the SIGAda Numerics Working Group's proposed standard, which is a proposed secondary ISO standard. The package as specified consists of 29 functions, which can be classified into three families: exponential, trigonometric, and hyperbolic. The exponential family consists of 5 functions: Sqrt(x), Exp(x), X**Y, Log(X) and Log(x,Base). The trigonometric family consists of 16 functions: the four usual trig functions Sin(x), Cos(x), Tan(x), and Cot(x) and the four inverses Arcsin(x), Arccos(x), Arctan(y,x), and Arccot(x,y) constitute 8 of the 16. These 8 functions are approximations to the corresponding mathematical functions, with 2pi being the period. The proposed ISO standard also requires 8 other functions that allow the user to specify a period (e.g., 360.0). The calling sequences for the other 8 are Sin(x,cycle), Cos(x, cycle), and Arccot(y,x,cycle). Finally, the hyperbolic family consists of 8 functions: the commonly used Sinh(x), Cosh(x), Tanh(x), and Coth(x) and the corresponding inverses Arcsinh(x), Arccosh(x), Arctanh(x), and Arccoth(x). The code has comments defining usage and implementation details, plus an informative README file. Also included are test packages and drivers to test each of the functions. This product was developed as part of the Software Technology for Adaptable, Reliable Systems (STARS) program, sponsored by the Advanced Research Projects Agency (ARPA). [http://archive.adaic.com/tools/bindings/GPEF] GPEF - Generic Math Functions These Ada math packages implement the following generic packages specified by the ISO Numerics Rapporteur Group: generic_elementary_functions, generic_primitive_functions, generic_algebraic_functions, and math_constants. As with most software, this carries no guarantees. Single precision and double precision have been pretty well tested on an Apollo (Alsys) and a VAX (DEC). Longest_Float precision is mostly finished, but rough. This will also compile on VAX/Unix (Verdix), Apollo/SR10.2 (Verdix). This product was developed as part of the Software Technology for Adaptable, Reliable Systems (STARS) program, sponsored by the Advanced Research Projects Agency (ARPA). [http://archive.adaic.com/tools/bindings/GPEF/gmf-bindings] Computer Graphics/Graphical Kernel System This Ada software bundle implements the Graphical Kernel System (GKS), an internationally accepted standard for computer graphics recognized by the American National Standards Institute (ANSI) and the International Standardization Organization (ISO). The Graphical Kernel System provides an application programmer's interface, defining graphics functions at the logical device level rather than the hardware device level. Using a GKS implementation, an applications programmer can write graphics programs without having to learn the scheme for describing graphics on a particular hardware device. This GKS interface allows the application programmer to make Ada calls to a wide variety of graphics and plotting routines, and supports several types of graphics terminals. This product was developed as part of the Software Technology for Adaptable, Reliable Systems (STARS) program, sponsored by the Advanced Research Projects Agency (ARPA). [http://archive.adaic.com/tools/bindings/GKS] Information Resource Dictionary System (IRDS) This document is an editor's draft of the Information Resource Dictionary System (IRDS) Services Interface, dated 3 July 1992, ISO/IEC 10728: 1993 (E), Draft International Standard. It is for the purpose of review by participants in the SC21 editing committee. This draft standard defines an interface to describe and control an enterprise's information resources. IRDS interfaces to an SQL type of database using services in the form of function and procedure calls. A draft Ada binding to IRDS has been submitted to the ISO IRDS Rapporteur Group as a proposed Annex D to ISO/IEC 10728. It is currently a working draft. [archive.adaic.com/tools/bindings/IRDS] Microsoft Windows - Win32Ada Binding Win32Ada is a complete thin binding to Win32, the 32-bit interface to Microsoft Windows 95 And Microsoft Windows NT. (A subset of Win32 (Win32S) is supported on Windows 3.1.) Win32Ada's capabilities include: creation of processes, windows, and menus; graphics, keyboard, and mouse control; MAPI (mail); Dynamic Data Exchange (DDE); Object Linking and Embedding (OLE), compound documents; video, sound, and multimedia; and Open Data Base Connectivity (ODBC). That is, everything that is available to a C program. At present, distribution arrangements have not yet been finalized. In the interim, those interested in obtaining copies may contact Dennis Struble at Intermetrics, Inc., for further information. Dennis Struble Intermetrics, Inc. 733 Concord Avenue Cambridge, MA 02138 tel: 617/661-1840 fax: 617/868-2843 MIL-STD 1553 Data Bus - Generic Avionics Data Bus Tool Kit (GADBTK) This is the source code for the Generic Avionics Data Bus Tool Kit (GADBTK), which is part of the Ada Joint Program Office's Ada Technology Insertion Program (ATIP) binding project. The GADBTK project is intended to provide a strong Ada software binding to the Military Standard 1553 data bus. The bus is used for time multiplex data communications between different sensor and computer subsystems on many current military platforms. The associated documentation is available through the Defense Technical Information Center (DTIC) and the National Technical Information Service (NTIS). [http://archive.adaic.com/tools/bindings/gadbtk] OS2 - Thin Ada 95 Binding to the OS/2 API The OS2 package provides thin, direct Ada 95 bindings to the most important sections of OS/2's GUI API, i.e. Win, GPI, Dev, Spl, DDF, Prf, Drg. 1.) Use the BUILD command file to compile the bindings and create the sample program (WINTEST). 2.) Note that some names and types are not exactly identical to the CAPI definitions. Declarations like "HWND hwnd", anonymous arrays as structure members, pointers etc. had to be changed. 3.) Support for other OS/2 APIs than those related to the Presentation Manager has been dropped. The bindings have been created using a customized CBIND6 and tested with GNAT 3.05 on OS/2 Warp v3. The CBIND utility can be obtained from ftp://rational.com/public/tools/cbind/, the GNAT Ada'95 compiler is at ftp://ftp.cs.nyu.edu/pub/gnat/. The base file was OS2EMX.H (part of gcc/emx), thus a copy of the GNU Library General Public License is included with the distribution archive. (A personal note: I still don't understand why all this hardcore legal stuff is necessary and why every piece of code has to include a lengthy all-capitals disclaimer message.) All kinds of feedback are appreciated. POC: Klaus A. Brunner e-mail: kbrun@ibm.net [ftp://cs.nyu.edu/pub/gnat/contrib/os2/bindings/] Package CGI "Package CGI" is an Ada 95 interface to the "Common Gateway Interface" (CGI). This package makes it easier to create Ada programs that can be invoked by World-Wide-Web (WWW) HTTP servers using the standard CGI interface. Using it, you can create Ada programs that perform queries or other processing by request from a WWW user. This package is copyright (C) 1995 David A. Wheeler (wheeler@ida.org). You are free to use it in anything you wish without restriction or payment, but please provide credit if you use this package. This Ada package provides two data access approaches from the CGI: 1.) As an associative array; simply provide the key name (as a string) and the value associated with that key will be returned. 2.) As a sequence of key-value pairs, indexed from 1 to Argument_Count. This access approach is similar to the Ada library Ada.Command_Line. The main access routines support both Ada 95 types String and Unbounded_String. [http://wuarchive.wustl.edu/languages/ada/swcomps/cgi/cgi.html] Paradox Dbms_Template represents a simple DBMS class. It is single user, but it can be extended for networks. It was created as a binding to Paradox Engine 1.0. It can serve as a binding to other DBMS's such as dBASE and Clipper by purchasing a C library for accessing other DBMS's and changing the body of Dbms_Template. This binding requires Paradox Engine and Microsoft's C library (large model). [http://archive.adaic.com/tools/bindings/paradox] Portable Common Tool Environment (PCTE) This is the Ada Portable Common Tool Environment (PCTE) binding (AdaPCTE). It provides Ada applications access to a PCTE object base as defined by the European Computer Manufacturers Association (ECMA) Ada PCTE specification (Standard ECMA-162 Ada Language Binding, December 1991). This "alpha" release provides a minimal set of interfaces to permit Ada developers to experiment with and evaluate PCTE for use in future Ada applications. It is expected that later releases will complete the binding. Since no conforming implementations of ECMA PCTE existed as defined in Standard ECMA-149, AdaPCTE ws implemented on GIE Emeraude's PCTE V12.2 Fix 7 or V12.3. Because only a subset of the ECMA PCTE Ada specification had been implemented for the 0.2 release, and because ECMA PCTE functionality differs somewhat from Emeraude PCTE functionality, the complete functionality of Emeraude PCTE is not available to Ada applications using these bindings. [http://archive.adaic.com/tools/bindings/PCTE] POSIX - Ada 83 The following statement is provided by the IEEE and governs the use of this code: These package specifications were extracted from IEEE Std 1003.5-1992, IEEE Standard for Information Technology - POSIX Ada Language Interfaces - Part 1: Binding System Application Program Interface, copyright (c) 1992 by the Institute of Electrical and Electronics Engineers, Inc. These package specifications represent only a portion of the document and are not to be interpreteted as the approved consensus standard. The IEEE Std 1003.5-1992 must be used in conjunction with these package specifications in order to claim conformance. The IEEE takes no responsibility for and will assume no liability for damages resulting from the reader's misinpretation of said information resulting from its out of context nature. To order copies of the IEEE Std 1003.5-1992, please contact the IEEE Service Center at 445 Hoes Lane, PO Box 1331, Piscataway, NJ 08855-1331; via phone at 1-800-678-IEEE, 908-981-1393; or via fax at 908-981-9667. Note that these specifications are incomplete, in that the standard identifies some declarations as implementation-defined. In addition, no package bodies are provided. This standard was developed by IEEE Working Group P1003.5. For more information on this group, contact the Chairman, James Lonjers, lonjers@vfl.paramax.com or 805/987-9457. Formal requests for interpretations of this standard should be addressed to the IEEE, as specified in the document. An e-mail list discussing ongoing POSIX/Ada binding work is available as "posix-ada@verdix.com". Send e-mail to "posixadarequest@verdix.com" to be included on the list. Current work in IEEE P1003.5 consists of the Ada Binding to POSIX Real-Time Extensions (IEEE Project P1003.20) and current interpretations of IEEE Std 1003.5-1992. [http://archive.adaic.com/tools/bindings/POSIX/ada83/] POSIX - Ada 95 These are POSIX .5 library specs. The library is under development, and this is a work-in-progress version release. A work-in-progress implementation of the package bodies should also be available shortly. (For more information via the World Wide Web, look into the PART Home page: "http://www.cs.fsu.edu/~doh/") For questions and suggestions, e-mail can be sent to part@ada.cs.fsu.edu. [http://archive.adaic.com/tools/bindings/POSIX/ada95/] POSIX Ada Run-Time System Libraries (PART) This is a pointer file to the POSIX Ada Run-Time System Libraries (PART), which contains code from one of the projects supported by the Ada Joint Program Office's FY91 Ada Technology Insertion Program (ATIP). PART is available to the public from Florida State University (FSU) for non-commercial use. See copyright note near end. PART can be obtained by anonymous FTP from FSU's ftp server (ftp.cs.fsu.edu). The release there is version 1.2 of the POSIX Ada Run-Time System Library (PART) using a CARTS interface [3]. It is implemented over the POSIX 1003.4a Threads Extension (Pthreads) [1], and requires access to an interface compliant with that standard. The purpose of this release of PART is to demonstrate the feasibility of implementing an Ada '83 run-time system over POSIX threads, and disclose the full details of one such implementation. By mapping Ada tasks onto POSIX threads, this approach should enhance the portability of Ada runtime systems and provide a platform for exploiting shared-memory multiprocessors. [ftp://ftp.cs.fsu.edu/pub/PART] SQL - A Prototype Binding of ANSI-Standard SQL to Ada Supporting the SAME Methodology This is the final release of the Computer Software Configuration Item (CSCI) identified as the IBM STARS Prototype Binding of Ansi-Standard SQL to Ada Supporting the SQL Ada Module Extensions (SAME) Methodology. This software was developed for the DoD's Software Technology for Adaptable, Reliable Systems (STARS) Program. The primary purpose of the Binding of ANSI-Standard SQL to Ada is to provide access to relational data bases that support SQL from within an Ada program. The secondary purpose of this project is to provide this access by implementing the SAME approach to data base interface as described in Guidelines for Use of the SAME, Technical Report CMU/SEI-89-TR-16. SAME is a specialization of the modular approach for implementing an interface between a programming language (in this case Ada) and a DBMS whose data manipulation language is SQL. SAME is an extension of the existing SQL module language standard meant to maximize Ada language capabilities. SAME provides an abstraction/mapping between an Ada program's objects and the weakly typed SQL concrete types through a layer that exists between the application program and the actual interface to the data base. To use SAME without any automated support would be a time consuming task. This project will provide such automated support. [http://archive.adaic.com/tools/bindings/SQL] SQL - SAMeDL Development Environment This is a release of the Intermetrics SAMeDL Development Environment. This software has been provided as part of a research and development effort under the Ada Technology Insertion Program (ATIP) in an effort to investigate and promote Ada/SQL interfacing technology, namely SAMeDL, within the Ada community. Although all attempts have been made to make this software as robust as possible, it is not of production quality. Deficiencies and problems are inherent and should not be used as a means for negatively judging the merits of SAMeDL. The challenges pertaining to the use of Ada and SQL in a well-engineered information system led to the formation of the SQL Ada Module Extension Design Committee (SAME-DC) at the Software Engineering Institute (SEI). The committee developed the SQL Ada Module Extension (SAME) Methodology to support and extend the modular approach to using Ada and SQL in database applications. The language which is used to implement SAME is the SQL Ada Module Description Language, or SAMeDL. Using the SAME methodology requires that SQL statements be separated from the Ada application code, and encapsulated in separate modules. The SQL statements are not embedded in the Ada packages, thus isolating the Ada application from the DBMS design and implementation. SAMeDL is designed to facilitate the construction of Ada database applications that use the SAME methodology. [http://archive.adaic.com/tools/bindings/SAMeDL/] TCP/IP - Secure File Transfer Program (SFTP) The Secure File Transfer Program provides a means of transferring sensitive information from one computer system to another. This system implements Transmission Control Protocol (TCP) and conforms to RFC:793. TCP provides a reliable communication between pairs of processes in logically distinct hosts on networks and sets of interconnected networks. The TCP resides in the transport layer of the DoD Internet Model. The system encapsulates messages received from the utility layer protocols, which reside directly above, and passes the packet to the Internet layer (communicates with the Internet Protocol (IP)). The TCP supports the following functions: connection-oriented, reliable data transfer, ordered data transfer delivery, full-duplex, and flow control. This product was developed as part of the Software Technology for Adaptable, Reliable Systems (STARS) program, sponsored by the Advanced Research Projects Agency (ARPA). [http://archive.adaic.com/tools/SFTP/] Transportable Applications Enviornment (TAE) The Transportable Applications Environment (TAE) Project is a state-of-the-art user interface development and management system, that provides services and tools for developing and managing graphically-oriented user interfaces, as well as providing common application executive services. The main component of TAE Plus is a WYSIWYG user interface designer's Workbench that allows an application developer to interactively construct a graphical user interface (GUI) by arranging and manipulating TAE Plus "interaction objects". These interaction objects include both user entry items (e.g., radio buttons, text keyin, icon buttons) and real-time dynamic data objects (e.g., dials, sliders, gauges, and discrete picture sequences). The Workbench also provides the capability to dynamically define "connections" between interaction objects, as well as to rehearse the designed GUI dialogue. The TAE Plus Workbench is a tool for building user interfaces. It is designed for both non-programmers and programmers. Knowledge of OSF/Motif or the X Window System is not necessary. New TAE Plus users quickly master the intuitive operation of the Workbench and can build working interfaces in a matter of hours - often without consulting manuals. As an aid to bridging the gap between the development and runtime environments, the Workbench provides the option of generating a skeleton source code program (in C, ANSI C, C++, and Ada) which fully displays and manages the designed GUI. This Workbench-generated code includes the calls to the TAE Plus runtime services and the Window Programming Tools (WPTs). The separation of the user interface from the application code allows changes to be made easily to an application's GUI without recompiling or relinking the software, and also hides the complexities of the underlying X and Motif windowing services from the application. [http://groucho.gsfc.nasa.gov/Code_520/Code_522/Projects/TAE/Bulletin/TAE_Bulletin3.htm] Unix - Paradise Paradise is a set of Ada packages intended to provide an interface to the Unix operating system, and more specifically to the communication routines, that are accessed via file descriptors. It lets the Ada programmer use files, pipes, and sockets, as well as signals, error codes, environment variables, etc., using an interface that looks as much as possible like the C interface. Paradise supports multi-tasking: any input or output is blocking for the calling task only, and not for the entire process. Paradise is intended to be system-independant and compiler-independant; so far, it works on four environments: - SunOS 4.1 (Sparc) and SunAda (Verdix 6.1) compiler - SunOS 4.1 (Sparc) and TeleSoft 4.1.1 compiler - HP-UX (HP9000/700) and HP-Ada (Alsys) compiler - HP-UX (HP9000/700) and Verdix 6.3d compiler It is known not to work well on SunOS/Alsys, because of problems on signal handlers; For people who would like to port it to other environments, information on portability is displayed inside the code. A programmer's guide should appear in future versions. Send all comments, bug reports, patches to "paradise@cenatls.cena.dgac.fr" (Nicolas Courtel). [http://archive.adaic.com/tools/bindings/paradise/] Ada Binding to XModem and Kermit Network Protocols This is a set of Ada packages that implement the file transfer protocols only (for X_Modem and Kermit protocols). The documentation is complete and the implementation encourages reuse of this tool in a variety of ways.hpot [http://archive.adaic.com/tools/bindings/xmodem-kermit/] X-Windows - Motif These are the BCA/STARS Motif Ada bindings. Motif is an X-Windows based toolkit for user interface development. The BCA Motif Ada bindings are a binding to (not an implementation of): - the Motif widget (user interface object) set, and - a subset of the Motif functions You must have the Motif object code libraries to use this software. The bindings were developed using Motif version 1.0.1 and have not been tested under 1.1. [http://archive.adaic.com/tools/bindings/MOTIF/] X-Windows - X, Xlib, Xt, Motif This is a complete set of Ada Xlib/Xt/Motif bindings, and a set of examples. The Ada Xlib/Xt/Motif bindings require the existance of the C Xlib/Xt/Motif bindings. (Ie: the include files and the libraries are available). The actual bindings are pure Ada code, produced by tools written in Ada and C, with all the tools etc. in the tar file. The C tools are compiled using your system's Xlib, Xt, and Xm include files, and they use the information found there to produce Ada representation clauses, constants, etc. that exactly match the C representations of the structures, etc. This is how this kit can reliably generate bindings for a range of architectures, regardless of word-size, alignment-rules, etc. These bindings are for X11R4/Motif 1.1, X11R5/Motif 1.2 and DECMotif Extensions. These bindings are meant for DEC Ada 3.0 and later on OSF/1 and OpenVMS. They should work, or be easily modified to work, on many other Ada compilers and platforms. [http://archive.adaic.com/tools/bindings/Xlib-Xt-Xm-bindings/] X-Windows - Ada/X Toolkit This software package provides an Ada programmatic interface to a set of reusable user interface abstractions known as widgets. The software provides the full functionality of the M.I.T X Consortium Version 11 Release 4 X Window System. The software consists of three components: an Ada binding to the Xlib layer, an Ada implementation of the Xt Intrinsics layer, and an Ada widget library. The Ada binding to the Xlib layer upgrades the STARS Foundations Ada Xlib binding, and provides a protocol interface with a set of graphics drawing primitives. The Xt Intrinsics layer provides a policy-free mechanism for creating and managing user interface objects. User interface objects are contained in the widget library, which consists of a small set of commonly used user interface abstractions such as scroll bars and command buttons. This product was developed as part of the Software Technology for Adaptable, Reliable Systems (STARS) program, sponsored by the Advanced Research Projects Agency (ARPA). [http://archive.adaic.com/tools/bindings/X-toolkit/]
The package as specified consists of 29 functions, which can be classified into three families: exponential, trigonometric, and hyperbolic.
The exponential family consists of 5 functions: Sqrt(x), Exp(x), X**Y, Log(X) and Log(x,Base).
The trigonometric family consists of 16 functions: the four usual trig functions Sin(x), Cos(x), Tan(x), and Cot(x) and the four inverses Arcsin(x), Arccos(x), Arctan(y,x), and Arccot(x,y) constitute 8 of the 16. These 8 functions are approximations to the corresponding mathematical functions, with 2pi being the period. The proposed ISO standard also requires 8 other functions that allow the user to specify a period (e.g., 360.0). The calling sequences for the other 8 are Sin(x,cycle), Cos(x, cycle), and Arccot(y,x,cycle).
Finally, the hyperbolic family consists of 8 functions: the commonly used Sinh(x), Cosh(x), Tanh(x), and Coth(x) and the corresponding inverses Arcsinh(x), Arccosh(x), Arctanh(x), and Arccoth(x).
The code has comments defining usage and implementation details, plus an informative README file. Also included are test packages and drivers to test each of the functions.
This product was developed as part of the Software Technology for Adaptable, Reliable Systems (STARS) program, sponsored by the Advanced Research Projects Agency (ARPA).
[http://archive.adaic.com/tools/bindings/GPEF]
GPEF - Generic Math Functions These Ada math packages implement the following generic packages specified by the ISO Numerics Rapporteur Group: generic_elementary_functions, generic_primitive_functions, generic_algebraic_functions, and math_constants. As with most software, this carries no guarantees. Single precision and double precision have been pretty well tested on an Apollo (Alsys) and a VAX (DEC). Longest_Float precision is mostly finished, but rough. This will also compile on VAX/Unix (Verdix), Apollo/SR10.2 (Verdix). This product was developed as part of the Software Technology for Adaptable, Reliable Systems (STARS) program, sponsored by the Advanced Research Projects Agency (ARPA). [http://archive.adaic.com/tools/bindings/GPEF/gmf-bindings] Computer Graphics/Graphical Kernel System This Ada software bundle implements the Graphical Kernel System (GKS), an internationally accepted standard for computer graphics recognized by the American National Standards Institute (ANSI) and the International Standardization Organization (ISO). The Graphical Kernel System provides an application programmer's interface, defining graphics functions at the logical device level rather than the hardware device level. Using a GKS implementation, an applications programmer can write graphics programs without having to learn the scheme for describing graphics on a particular hardware device. This GKS interface allows the application programmer to make Ada calls to a wide variety of graphics and plotting routines, and supports several types of graphics terminals. This product was developed as part of the Software Technology for Adaptable, Reliable Systems (STARS) program, sponsored by the Advanced Research Projects Agency (ARPA). [http://archive.adaic.com/tools/bindings/GKS] Information Resource Dictionary System (IRDS) This document is an editor's draft of the Information Resource Dictionary System (IRDS) Services Interface, dated 3 July 1992, ISO/IEC 10728: 1993 (E), Draft International Standard. It is for the purpose of review by participants in the SC21 editing committee. This draft standard defines an interface to describe and control an enterprise's information resources. IRDS interfaces to an SQL type of database using services in the form of function and procedure calls. A draft Ada binding to IRDS has been submitted to the ISO IRDS Rapporteur Group as a proposed Annex D to ISO/IEC 10728. It is currently a working draft. [archive.adaic.com/tools/bindings/IRDS] Microsoft Windows - Win32Ada Binding Win32Ada is a complete thin binding to Win32, the 32-bit interface to Microsoft Windows 95 And Microsoft Windows NT. (A subset of Win32 (Win32S) is supported on Windows 3.1.) Win32Ada's capabilities include: creation of processes, windows, and menus; graphics, keyboard, and mouse control; MAPI (mail); Dynamic Data Exchange (DDE); Object Linking and Embedding (OLE), compound documents; video, sound, and multimedia; and Open Data Base Connectivity (ODBC). That is, everything that is available to a C program. At present, distribution arrangements have not yet been finalized. In the interim, those interested in obtaining copies may contact Dennis Struble at Intermetrics, Inc., for further information. Dennis Struble Intermetrics, Inc. 733 Concord Avenue Cambridge, MA 02138 tel: 617/661-1840 fax: 617/868-2843 MIL-STD 1553 Data Bus - Generic Avionics Data Bus Tool Kit (GADBTK) This is the source code for the Generic Avionics Data Bus Tool Kit (GADBTK), which is part of the Ada Joint Program Office's Ada Technology Insertion Program (ATIP) binding project. The GADBTK project is intended to provide a strong Ada software binding to the Military Standard 1553 data bus. The bus is used for time multiplex data communications between different sensor and computer subsystems on many current military platforms. The associated documentation is available through the Defense Technical Information Center (DTIC) and the National Technical Information Service (NTIS). [http://archive.adaic.com/tools/bindings/gadbtk] OS2 - Thin Ada 95 Binding to the OS/2 API The OS2 package provides thin, direct Ada 95 bindings to the most important sections of OS/2's GUI API, i.e. Win, GPI, Dev, Spl, DDF, Prf, Drg. 1.) Use the BUILD command file to compile the bindings and create the sample program (WINTEST). 2.) Note that some names and types are not exactly identical to the CAPI definitions. Declarations like "HWND hwnd", anonymous arrays as structure members, pointers etc. had to be changed. 3.) Support for other OS/2 APIs than those related to the Presentation Manager has been dropped. The bindings have been created using a customized CBIND6 and tested with GNAT 3.05 on OS/2 Warp v3. The CBIND utility can be obtained from ftp://rational.com/public/tools/cbind/, the GNAT Ada'95 compiler is at ftp://ftp.cs.nyu.edu/pub/gnat/. The base file was OS2EMX.H (part of gcc/emx), thus a copy of the GNU Library General Public License is included with the distribution archive. (A personal note: I still don't understand why all this hardcore legal stuff is necessary and why every piece of code has to include a lengthy all-capitals disclaimer message.) All kinds of feedback are appreciated. POC: Klaus A. Brunner e-mail: kbrun@ibm.net [ftp://cs.nyu.edu/pub/gnat/contrib/os2/bindings/] Package CGI "Package CGI" is an Ada 95 interface to the "Common Gateway Interface" (CGI). This package makes it easier to create Ada programs that can be invoked by World-Wide-Web (WWW) HTTP servers using the standard CGI interface. Using it, you can create Ada programs that perform queries or other processing by request from a WWW user. This package is copyright (C) 1995 David A. Wheeler (wheeler@ida.org). You are free to use it in anything you wish without restriction or payment, but please provide credit if you use this package. This Ada package provides two data access approaches from the CGI: 1.) As an associative array; simply provide the key name (as a string) and the value associated with that key will be returned. 2.) As a sequence of key-value pairs, indexed from 1 to Argument_Count. This access approach is similar to the Ada library Ada.Command_Line. The main access routines support both Ada 95 types String and Unbounded_String. [http://wuarchive.wustl.edu/languages/ada/swcomps/cgi/cgi.html] Paradox Dbms_Template represents a simple DBMS class. It is single user, but it can be extended for networks. It was created as a binding to Paradox Engine 1.0. It can serve as a binding to other DBMS's such as dBASE and Clipper by purchasing a C library for accessing other DBMS's and changing the body of Dbms_Template. This binding requires Paradox Engine and Microsoft's C library (large model). [http://archive.adaic.com/tools/bindings/paradox] Portable Common Tool Environment (PCTE) This is the Ada Portable Common Tool Environment (PCTE) binding (AdaPCTE). It provides Ada applications access to a PCTE object base as defined by the European Computer Manufacturers Association (ECMA) Ada PCTE specification (Standard ECMA-162 Ada Language Binding, December 1991). This "alpha" release provides a minimal set of interfaces to permit Ada developers to experiment with and evaluate PCTE for use in future Ada applications. It is expected that later releases will complete the binding. Since no conforming implementations of ECMA PCTE existed as defined in Standard ECMA-149, AdaPCTE ws implemented on GIE Emeraude's PCTE V12.2 Fix 7 or V12.3. Because only a subset of the ECMA PCTE Ada specification had been implemented for the 0.2 release, and because ECMA PCTE functionality differs somewhat from Emeraude PCTE functionality, the complete functionality of Emeraude PCTE is not available to Ada applications using these bindings. [http://archive.adaic.com/tools/bindings/PCTE] POSIX - Ada 83 The following statement is provided by the IEEE and governs the use of this code: These package specifications were extracted from IEEE Std 1003.5-1992, IEEE Standard for Information Technology - POSIX Ada Language Interfaces - Part 1: Binding System Application Program Interface, copyright (c) 1992 by the Institute of Electrical and Electronics Engineers, Inc. These package specifications represent only a portion of the document and are not to be interpreteted as the approved consensus standard. The IEEE Std 1003.5-1992 must be used in conjunction with these package specifications in order to claim conformance. The IEEE takes no responsibility for and will assume no liability for damages resulting from the reader's misinpretation of said information resulting from its out of context nature. To order copies of the IEEE Std 1003.5-1992, please contact the IEEE Service Center at 445 Hoes Lane, PO Box 1331, Piscataway, NJ 08855-1331; via phone at 1-800-678-IEEE, 908-981-1393; or via fax at 908-981-9667. Note that these specifications are incomplete, in that the standard identifies some declarations as implementation-defined. In addition, no package bodies are provided. This standard was developed by IEEE Working Group P1003.5. For more information on this group, contact the Chairman, James Lonjers, lonjers@vfl.paramax.com or 805/987-9457. Formal requests for interpretations of this standard should be addressed to the IEEE, as specified in the document. An e-mail list discussing ongoing POSIX/Ada binding work is available as "posix-ada@verdix.com". Send e-mail to "posixadarequest@verdix.com" to be included on the list. Current work in IEEE P1003.5 consists of the Ada Binding to POSIX Real-Time Extensions (IEEE Project P1003.20) and current interpretations of IEEE Std 1003.5-1992. [http://archive.adaic.com/tools/bindings/POSIX/ada83/] POSIX - Ada 95 These are POSIX .5 library specs. The library is under development, and this is a work-in-progress version release. A work-in-progress implementation of the package bodies should also be available shortly. (For more information via the World Wide Web, look into the PART Home page: "http://www.cs.fsu.edu/~doh/") For questions and suggestions, e-mail can be sent to part@ada.cs.fsu.edu. [http://archive.adaic.com/tools/bindings/POSIX/ada95/] POSIX Ada Run-Time System Libraries (PART) This is a pointer file to the POSIX Ada Run-Time System Libraries (PART), which contains code from one of the projects supported by the Ada Joint Program Office's FY91 Ada Technology Insertion Program (ATIP). PART is available to the public from Florida State University (FSU) for non-commercial use. See copyright note near end. PART can be obtained by anonymous FTP from FSU's ftp server (ftp.cs.fsu.edu). The release there is version 1.2 of the POSIX Ada Run-Time System Library (PART) using a CARTS interface [3]. It is implemented over the POSIX 1003.4a Threads Extension (Pthreads) [1], and requires access to an interface compliant with that standard. The purpose of this release of PART is to demonstrate the feasibility of implementing an Ada '83 run-time system over POSIX threads, and disclose the full details of one such implementation. By mapping Ada tasks onto POSIX threads, this approach should enhance the portability of Ada runtime systems and provide a platform for exploiting shared-memory multiprocessors. [ftp://ftp.cs.fsu.edu/pub/PART] SQL - A Prototype Binding of ANSI-Standard SQL to Ada Supporting the SAME Methodology This is the final release of the Computer Software Configuration Item (CSCI) identified as the IBM STARS Prototype Binding of Ansi-Standard SQL to Ada Supporting the SQL Ada Module Extensions (SAME) Methodology. This software was developed for the DoD's Software Technology for Adaptable, Reliable Systems (STARS) Program. The primary purpose of the Binding of ANSI-Standard SQL to Ada is to provide access to relational data bases that support SQL from within an Ada program. The secondary purpose of this project is to provide this access by implementing the SAME approach to data base interface as described in Guidelines for Use of the SAME, Technical Report CMU/SEI-89-TR-16. SAME is a specialization of the modular approach for implementing an interface between a programming language (in this case Ada) and a DBMS whose data manipulation language is SQL. SAME is an extension of the existing SQL module language standard meant to maximize Ada language capabilities. SAME provides an abstraction/mapping between an Ada program's objects and the weakly typed SQL concrete types through a layer that exists between the application program and the actual interface to the data base. To use SAME without any automated support would be a time consuming task. This project will provide such automated support. [http://archive.adaic.com/tools/bindings/SQL] SQL - SAMeDL Development Environment This is a release of the Intermetrics SAMeDL Development Environment. This software has been provided as part of a research and development effort under the Ada Technology Insertion Program (ATIP) in an effort to investigate and promote Ada/SQL interfacing technology, namely SAMeDL, within the Ada community. Although all attempts have been made to make this software as robust as possible, it is not of production quality. Deficiencies and problems are inherent and should not be used as a means for negatively judging the merits of SAMeDL. The challenges pertaining to the use of Ada and SQL in a well-engineered information system led to the formation of the SQL Ada Module Extension Design Committee (SAME-DC) at the Software Engineering Institute (SEI). The committee developed the SQL Ada Module Extension (SAME) Methodology to support and extend the modular approach to using Ada and SQL in database applications. The language which is used to implement SAME is the SQL Ada Module Description Language, or SAMeDL. Using the SAME methodology requires that SQL statements be separated from the Ada application code, and encapsulated in separate modules. The SQL statements are not embedded in the Ada packages, thus isolating the Ada application from the DBMS design and implementation. SAMeDL is designed to facilitate the construction of Ada database applications that use the SAME methodology. [http://archive.adaic.com/tools/bindings/SAMeDL/] TCP/IP - Secure File Transfer Program (SFTP) The Secure File Transfer Program provides a means of transferring sensitive information from one computer system to another. This system implements Transmission Control Protocol (TCP) and conforms to RFC:793. TCP provides a reliable communication between pairs of processes in logically distinct hosts on networks and sets of interconnected networks. The TCP resides in the transport layer of the DoD Internet Model. The system encapsulates messages received from the utility layer protocols, which reside directly above, and passes the packet to the Internet layer (communicates with the Internet Protocol (IP)). The TCP supports the following functions: connection-oriented, reliable data transfer, ordered data transfer delivery, full-duplex, and flow control. This product was developed as part of the Software Technology for Adaptable, Reliable Systems (STARS) program, sponsored by the Advanced Research Projects Agency (ARPA). [http://archive.adaic.com/tools/SFTP/] Transportable Applications Enviornment (TAE) The Transportable Applications Environment (TAE) Project is a state-of-the-art user interface development and management system, that provides services and tools for developing and managing graphically-oriented user interfaces, as well as providing common application executive services. The main component of TAE Plus is a WYSIWYG user interface designer's Workbench that allows an application developer to interactively construct a graphical user interface (GUI) by arranging and manipulating TAE Plus "interaction objects". These interaction objects include both user entry items (e.g., radio buttons, text keyin, icon buttons) and real-time dynamic data objects (e.g., dials, sliders, gauges, and discrete picture sequences). The Workbench also provides the capability to dynamically define "connections" between interaction objects, as well as to rehearse the designed GUI dialogue. The TAE Plus Workbench is a tool for building user interfaces. It is designed for both non-programmers and programmers. Knowledge of OSF/Motif or the X Window System is not necessary. New TAE Plus users quickly master the intuitive operation of the Workbench and can build working interfaces in a matter of hours - often without consulting manuals. As an aid to bridging the gap between the development and runtime environments, the Workbench provides the option of generating a skeleton source code program (in C, ANSI C, C++, and Ada) which fully displays and manages the designed GUI. This Workbench-generated code includes the calls to the TAE Plus runtime services and the Window Programming Tools (WPTs). The separation of the user interface from the application code allows changes to be made easily to an application's GUI without recompiling or relinking the software, and also hides the complexities of the underlying X and Motif windowing services from the application. [http://groucho.gsfc.nasa.gov/Code_520/Code_522/Projects/TAE/Bulletin/TAE_Bulletin3.htm] Unix - Paradise Paradise is a set of Ada packages intended to provide an interface to the Unix operating system, and more specifically to the communication routines, that are accessed via file descriptors. It lets the Ada programmer use files, pipes, and sockets, as well as signals, error codes, environment variables, etc., using an interface that looks as much as possible like the C interface. Paradise supports multi-tasking: any input or output is blocking for the calling task only, and not for the entire process. Paradise is intended to be system-independant and compiler-independant; so far, it works on four environments: - SunOS 4.1 (Sparc) and SunAda (Verdix 6.1) compiler - SunOS 4.1 (Sparc) and TeleSoft 4.1.1 compiler - HP-UX (HP9000/700) and HP-Ada (Alsys) compiler - HP-UX (HP9000/700) and Verdix 6.3d compiler It is known not to work well on SunOS/Alsys, because of problems on signal handlers; For people who would like to port it to other environments, information on portability is displayed inside the code. A programmer's guide should appear in future versions. Send all comments, bug reports, patches to "paradise@cenatls.cena.dgac.fr" (Nicolas Courtel). [http://archive.adaic.com/tools/bindings/paradise/] Ada Binding to XModem and Kermit Network Protocols This is a set of Ada packages that implement the file transfer protocols only (for X_Modem and Kermit protocols). The documentation is complete and the implementation encourages reuse of this tool in a variety of ways.hpot [http://archive.adaic.com/tools/bindings/xmodem-kermit/] X-Windows - Motif These are the BCA/STARS Motif Ada bindings. Motif is an X-Windows based toolkit for user interface development. The BCA Motif Ada bindings are a binding to (not an implementation of): - the Motif widget (user interface object) set, and - a subset of the Motif functions You must have the Motif object code libraries to use this software. The bindings were developed using Motif version 1.0.1 and have not been tested under 1.1. [http://archive.adaic.com/tools/bindings/MOTIF/] X-Windows - X, Xlib, Xt, Motif This is a complete set of Ada Xlib/Xt/Motif bindings, and a set of examples. The Ada Xlib/Xt/Motif bindings require the existance of the C Xlib/Xt/Motif bindings. (Ie: the include files and the libraries are available). The actual bindings are pure Ada code, produced by tools written in Ada and C, with all the tools etc. in the tar file. The C tools are compiled using your system's Xlib, Xt, and Xm include files, and they use the information found there to produce Ada representation clauses, constants, etc. that exactly match the C representations of the structures, etc. This is how this kit can reliably generate bindings for a range of architectures, regardless of word-size, alignment-rules, etc. These bindings are for X11R4/Motif 1.1, X11R5/Motif 1.2 and DECMotif Extensions. These bindings are meant for DEC Ada 3.0 and later on OSF/1 and OpenVMS. They should work, or be easily modified to work, on many other Ada compilers and platforms. [http://archive.adaic.com/tools/bindings/Xlib-Xt-Xm-bindings/] X-Windows - Ada/X Toolkit This software package provides an Ada programmatic interface to a set of reusable user interface abstractions known as widgets. The software provides the full functionality of the M.I.T X Consortium Version 11 Release 4 X Window System. The software consists of three components: an Ada binding to the Xlib layer, an Ada implementation of the Xt Intrinsics layer, and an Ada widget library. The Ada binding to the Xlib layer upgrades the STARS Foundations Ada Xlib binding, and provides a protocol interface with a set of graphics drawing primitives. The Xt Intrinsics layer provides a policy-free mechanism for creating and managing user interface objects. User interface objects are contained in the widget library, which consists of a small set of commonly used user interface abstractions such as scroll bars and command buttons. This product was developed as part of the Software Technology for Adaptable, Reliable Systems (STARS) program, sponsored by the Advanced Research Projects Agency (ARPA). [http://archive.adaic.com/tools/bindings/X-toolkit/]
As with most software, this carries no guarantees. Single precision and double precision have been pretty well tested on an Apollo (Alsys) and a VAX (DEC). Longest_Float precision is mostly finished, but rough. This will also compile on VAX/Unix (Verdix), Apollo/SR10.2 (Verdix).
[http://archive.adaic.com/tools/bindings/GPEF/gmf-bindings]
Computer Graphics/Graphical Kernel System This Ada software bundle implements the Graphical Kernel System (GKS), an internationally accepted standard for computer graphics recognized by the American National Standards Institute (ANSI) and the International Standardization Organization (ISO). The Graphical Kernel System provides an application programmer's interface, defining graphics functions at the logical device level rather than the hardware device level. Using a GKS implementation, an applications programmer can write graphics programs without having to learn the scheme for describing graphics on a particular hardware device. This GKS interface allows the application programmer to make Ada calls to a wide variety of graphics and plotting routines, and supports several types of graphics terminals. This product was developed as part of the Software Technology for Adaptable, Reliable Systems (STARS) program, sponsored by the Advanced Research Projects Agency (ARPA). [http://archive.adaic.com/tools/bindings/GKS] Information Resource Dictionary System (IRDS) This document is an editor's draft of the Information Resource Dictionary System (IRDS) Services Interface, dated 3 July 1992, ISO/IEC 10728: 1993 (E), Draft International Standard. It is for the purpose of review by participants in the SC21 editing committee. This draft standard defines an interface to describe and control an enterprise's information resources. IRDS interfaces to an SQL type of database using services in the form of function and procedure calls. A draft Ada binding to IRDS has been submitted to the ISO IRDS Rapporteur Group as a proposed Annex D to ISO/IEC 10728. It is currently a working draft. [archive.adaic.com/tools/bindings/IRDS] Microsoft Windows - Win32Ada Binding Win32Ada is a complete thin binding to Win32, the 32-bit interface to Microsoft Windows 95 And Microsoft Windows NT. (A subset of Win32 (Win32S) is supported on Windows 3.1.) Win32Ada's capabilities include: creation of processes, windows, and menus; graphics, keyboard, and mouse control; MAPI (mail); Dynamic Data Exchange (DDE); Object Linking and Embedding (OLE), compound documents; video, sound, and multimedia; and Open Data Base Connectivity (ODBC). That is, everything that is available to a C program. At present, distribution arrangements have not yet been finalized. In the interim, those interested in obtaining copies may contact Dennis Struble at Intermetrics, Inc., for further information. Dennis Struble Intermetrics, Inc. 733 Concord Avenue Cambridge, MA 02138 tel: 617/661-1840 fax: 617/868-2843 MIL-STD 1553 Data Bus - Generic Avionics Data Bus Tool Kit (GADBTK) This is the source code for the Generic Avionics Data Bus Tool Kit (GADBTK), which is part of the Ada Joint Program Office's Ada Technology Insertion Program (ATIP) binding project. The GADBTK project is intended to provide a strong Ada software binding to the Military Standard 1553 data bus. The bus is used for time multiplex data communications between different sensor and computer subsystems on many current military platforms. The associated documentation is available through the Defense Technical Information Center (DTIC) and the National Technical Information Service (NTIS). [http://archive.adaic.com/tools/bindings/gadbtk] OS2 - Thin Ada 95 Binding to the OS/2 API The OS2 package provides thin, direct Ada 95 bindings to the most important sections of OS/2's GUI API, i.e. Win, GPI, Dev, Spl, DDF, Prf, Drg. 1.) Use the BUILD command file to compile the bindings and create the sample program (WINTEST). 2.) Note that some names and types are not exactly identical to the CAPI definitions. Declarations like "HWND hwnd", anonymous arrays as structure members, pointers etc. had to be changed. 3.) Support for other OS/2 APIs than those related to the Presentation Manager has been dropped. The bindings have been created using a customized CBIND6 and tested with GNAT 3.05 on OS/2 Warp v3. The CBIND utility can be obtained from ftp://rational.com/public/tools/cbind/, the GNAT Ada'95 compiler is at ftp://ftp.cs.nyu.edu/pub/gnat/. The base file was OS2EMX.H (part of gcc/emx), thus a copy of the GNU Library General Public License is included with the distribution archive. (A personal note: I still don't understand why all this hardcore legal stuff is necessary and why every piece of code has to include a lengthy all-capitals disclaimer message.) All kinds of feedback are appreciated. POC: Klaus A. Brunner e-mail: kbrun@ibm.net [ftp://cs.nyu.edu/pub/gnat/contrib/os2/bindings/] Package CGI "Package CGI" is an Ada 95 interface to the "Common Gateway Interface" (CGI). This package makes it easier to create Ada programs that can be invoked by World-Wide-Web (WWW) HTTP servers using the standard CGI interface. Using it, you can create Ada programs that perform queries or other processing by request from a WWW user. This package is copyright (C) 1995 David A. Wheeler (wheeler@ida.org). You are free to use it in anything you wish without restriction or payment, but please provide credit if you use this package. This Ada package provides two data access approaches from the CGI: 1.) As an associative array; simply provide the key name (as a string) and the value associated with that key will be returned. 2.) As a sequence of key-value pairs, indexed from 1 to Argument_Count. This access approach is similar to the Ada library Ada.Command_Line. The main access routines support both Ada 95 types String and Unbounded_String. [http://wuarchive.wustl.edu/languages/ada/swcomps/cgi/cgi.html] Paradox Dbms_Template represents a simple DBMS class. It is single user, but it can be extended for networks. It was created as a binding to Paradox Engine 1.0. It can serve as a binding to other DBMS's such as dBASE and Clipper by purchasing a C library for accessing other DBMS's and changing the body of Dbms_Template. This binding requires Paradox Engine and Microsoft's C library (large model). [http://archive.adaic.com/tools/bindings/paradox] Portable Common Tool Environment (PCTE) This is the Ada Portable Common Tool Environment (PCTE) binding (AdaPCTE). It provides Ada applications access to a PCTE object base as defined by the European Computer Manufacturers Association (ECMA) Ada PCTE specification (Standard ECMA-162 Ada Language Binding, December 1991). This "alpha" release provides a minimal set of interfaces to permit Ada developers to experiment with and evaluate PCTE for use in future Ada applications. It is expected that later releases will complete the binding. Since no conforming implementations of ECMA PCTE existed as defined in Standard ECMA-149, AdaPCTE ws implemented on GIE Emeraude's PCTE V12.2 Fix 7 or V12.3. Because only a subset of the ECMA PCTE Ada specification had been implemented for the 0.2 release, and because ECMA PCTE functionality differs somewhat from Emeraude PCTE functionality, the complete functionality of Emeraude PCTE is not available to Ada applications using these bindings. [http://archive.adaic.com/tools/bindings/PCTE] POSIX - Ada 83 The following statement is provided by the IEEE and governs the use of this code: These package specifications were extracted from IEEE Std 1003.5-1992, IEEE Standard for Information Technology - POSIX Ada Language Interfaces - Part 1: Binding System Application Program Interface, copyright (c) 1992 by the Institute of Electrical and Electronics Engineers, Inc. These package specifications represent only a portion of the document and are not to be interpreteted as the approved consensus standard. The IEEE Std 1003.5-1992 must be used in conjunction with these package specifications in order to claim conformance. The IEEE takes no responsibility for and will assume no liability for damages resulting from the reader's misinpretation of said information resulting from its out of context nature. To order copies of the IEEE Std 1003.5-1992, please contact the IEEE Service Center at 445 Hoes Lane, PO Box 1331, Piscataway, NJ 08855-1331; via phone at 1-800-678-IEEE, 908-981-1393; or via fax at 908-981-9667. Note that these specifications are incomplete, in that the standard identifies some declarations as implementation-defined. In addition, no package bodies are provided. This standard was developed by IEEE Working Group P1003.5. For more information on this group, contact the Chairman, James Lonjers, lonjers@vfl.paramax.com or 805/987-9457. Formal requests for interpretations of this standard should be addressed to the IEEE, as specified in the document. An e-mail list discussing ongoing POSIX/Ada binding work is available as "posix-ada@verdix.com". Send e-mail to "posixadarequest@verdix.com" to be included on the list. Current work in IEEE P1003.5 consists of the Ada Binding to POSIX Real-Time Extensions (IEEE Project P1003.20) and current interpretations of IEEE Std 1003.5-1992. [http://archive.adaic.com/tools/bindings/POSIX/ada83/] POSIX - Ada 95 These are POSIX .5 library specs. The library is under development, and this is a work-in-progress version release. A work-in-progress implementation of the package bodies should also be available shortly. (For more information via the World Wide Web, look into the PART Home page: "http://www.cs.fsu.edu/~doh/") For questions and suggestions, e-mail can be sent to part@ada.cs.fsu.edu. [http://archive.adaic.com/tools/bindings/POSIX/ada95/] POSIX Ada Run-Time System Libraries (PART) This is a pointer file to the POSIX Ada Run-Time System Libraries (PART), which contains code from one of the projects supported by the Ada Joint Program Office's FY91 Ada Technology Insertion Program (ATIP). PART is available to the public from Florida State University (FSU) for non-commercial use. See copyright note near end. PART can be obtained by anonymous FTP from FSU's ftp server (ftp.cs.fsu.edu). The release there is version 1.2 of the POSIX Ada Run-Time System Library (PART) using a CARTS interface [3]. It is implemented over the POSIX 1003.4a Threads Extension (Pthreads) [1], and requires access to an interface compliant with that standard. The purpose of this release of PART is to demonstrate the feasibility of implementing an Ada '83 run-time system over POSIX threads, and disclose the full details of one such implementation. By mapping Ada tasks onto POSIX threads, this approach should enhance the portability of Ada runtime systems and provide a platform for exploiting shared-memory multiprocessors. [ftp://ftp.cs.fsu.edu/pub/PART] SQL - A Prototype Binding of ANSI-Standard SQL to Ada Supporting the SAME Methodology This is the final release of the Computer Software Configuration Item (CSCI) identified as the IBM STARS Prototype Binding of Ansi-Standard SQL to Ada Supporting the SQL Ada Module Extensions (SAME) Methodology. This software was developed for the DoD's Software Technology for Adaptable, Reliable Systems (STARS) Program. The primary purpose of the Binding of ANSI-Standard SQL to Ada is to provide access to relational data bases that support SQL from within an Ada program. The secondary purpose of this project is to provide this access by implementing the SAME approach to data base interface as described in Guidelines for Use of the SAME, Technical Report CMU/SEI-89-TR-16. SAME is a specialization of the modular approach for implementing an interface between a programming language (in this case Ada) and a DBMS whose data manipulation language is SQL. SAME is an extension of the existing SQL module language standard meant to maximize Ada language capabilities. SAME provides an abstraction/mapping between an Ada program's objects and the weakly typed SQL concrete types through a layer that exists between the application program and the actual interface to the data base. To use SAME without any automated support would be a time consuming task. This project will provide such automated support. [http://archive.adaic.com/tools/bindings/SQL] SQL - SAMeDL Development Environment This is a release of the Intermetrics SAMeDL Development Environment. This software has been provided as part of a research and development effort under the Ada Technology Insertion Program (ATIP) in an effort to investigate and promote Ada/SQL interfacing technology, namely SAMeDL, within the Ada community. Although all attempts have been made to make this software as robust as possible, it is not of production quality. Deficiencies and problems are inherent and should not be used as a means for negatively judging the merits of SAMeDL. The challenges pertaining to the use of Ada and SQL in a well-engineered information system led to the formation of the SQL Ada Module Extension Design Committee (SAME-DC) at the Software Engineering Institute (SEI). The committee developed the SQL Ada Module Extension (SAME) Methodology to support and extend the modular approach to using Ada and SQL in database applications. The language which is used to implement SAME is the SQL Ada Module Description Language, or SAMeDL. Using the SAME methodology requires that SQL statements be separated from the Ada application code, and encapsulated in separate modules. The SQL statements are not embedded in the Ada packages, thus isolating the Ada application from the DBMS design and implementation. SAMeDL is designed to facilitate the construction of Ada database applications that use the SAME methodology. [http://archive.adaic.com/tools/bindings/SAMeDL/] TCP/IP - Secure File Transfer Program (SFTP) The Secure File Transfer Program provides a means of transferring sensitive information from one computer system to another. This system implements Transmission Control Protocol (TCP) and conforms to RFC:793. TCP provides a reliable communication between pairs of processes in logically distinct hosts on networks and sets of interconnected networks. The TCP resides in the transport layer of the DoD Internet Model. The system encapsulates messages received from the utility layer protocols, which reside directly above, and passes the packet to the Internet layer (communicates with the Internet Protocol (IP)). The TCP supports the following functions: connection-oriented, reliable data transfer, ordered data transfer delivery, full-duplex, and flow control. This product was developed as part of the Software Technology for Adaptable, Reliable Systems (STARS) program, sponsored by the Advanced Research Projects Agency (ARPA). [http://archive.adaic.com/tools/SFTP/] Transportable Applications Enviornment (TAE) The Transportable Applications Environment (TAE) Project is a state-of-the-art user interface development and management system, that provides services and tools for developing and managing graphically-oriented user interfaces, as well as providing common application executive services. The main component of TAE Plus is a WYSIWYG user interface designer's Workbench that allows an application developer to interactively construct a graphical user interface (GUI) by arranging and manipulating TAE Plus "interaction objects". These interaction objects include both user entry items (e.g., radio buttons, text keyin, icon buttons) and real-time dynamic data objects (e.g., dials, sliders, gauges, and discrete picture sequences). The Workbench also provides the capability to dynamically define "connections" between interaction objects, as well as to rehearse the designed GUI dialogue. The TAE Plus Workbench is a tool for building user interfaces. It is designed for both non-programmers and programmers. Knowledge of OSF/Motif or the X Window System is not necessary. New TAE Plus users quickly master the intuitive operation of the Workbench and can build working interfaces in a matter of hours - often without consulting manuals. As an aid to bridging the gap between the development and runtime environments, the Workbench provides the option of generating a skeleton source code program (in C, ANSI C, C++, and Ada) which fully displays and manages the designed GUI. This Workbench-generated code includes the calls to the TAE Plus runtime services and the Window Programming Tools (WPTs). The separation of the user interface from the application code allows changes to be made easily to an application's GUI without recompiling or relinking the software, and also hides the complexities of the underlying X and Motif windowing services from the application. [http://groucho.gsfc.nasa.gov/Code_520/Code_522/Projects/TAE/Bulletin/TAE_Bulletin3.htm] Unix - Paradise Paradise is a set of Ada packages intended to provide an interface to the Unix operating system, and more specifically to the communication routines, that are accessed via file descriptors. It lets the Ada programmer use files, pipes, and sockets, as well as signals, error codes, environment variables, etc., using an interface that looks as much as possible like the C interface. Paradise supports multi-tasking: any input or output is blocking for the calling task only, and not for the entire process. Paradise is intended to be system-independant and compiler-independant; so far, it works on four environments: - SunOS 4.1 (Sparc) and SunAda (Verdix 6.1) compiler - SunOS 4.1 (Sparc) and TeleSoft 4.1.1 compiler - HP-UX (HP9000/700) and HP-Ada (Alsys) compiler - HP-UX (HP9000/700) and Verdix 6.3d compiler It is known not to work well on SunOS/Alsys, because of problems on signal handlers; For people who would like to port it to other environments, information on portability is displayed inside the code. A programmer's guide should appear in future versions. Send all comments, bug reports, patches to "paradise@cenatls.cena.dgac.fr" (Nicolas Courtel). [http://archive.adaic.com/tools/bindings/paradise/] Ada Binding to XModem and Kermit Network Protocols This is a set of Ada packages that implement the file transfer protocols only (for X_Modem and Kermit protocols). The documentation is complete and the implementation encourages reuse of this tool in a variety of ways.hpot [http://archive.adaic.com/tools/bindings/xmodem-kermit/] X-Windows - Motif These are the BCA/STARS Motif Ada bindings. Motif is an X-Windows based toolkit for user interface development. The BCA Motif Ada bindings are a binding to (not an implementation of): - the Motif widget (user interface object) set, and - a subset of the Motif functions You must have the Motif object code libraries to use this software. The bindings were developed using Motif version 1.0.1 and have not been tested under 1.1. [http://archive.adaic.com/tools/bindings/MOTIF/] X-Windows - X, Xlib, Xt, Motif This is a complete set of Ada Xlib/Xt/Motif bindings, and a set of examples. The Ada Xlib/Xt/Motif bindings require the existance of the C Xlib/Xt/Motif bindings. (Ie: the include files and the libraries are available). The actual bindings are pure Ada code, produced by tools written in Ada and C, with all the tools etc. in the tar file. The C tools are compiled using your system's Xlib, Xt, and Xm include files, and they use the information found there to produce Ada representation clauses, constants, etc. that exactly match the C representations of the structures, etc. This is how this kit can reliably generate bindings for a range of architectures, regardless of word-size, alignment-rules, etc. These bindings are for X11R4/Motif 1.1, X11R5/Motif 1.2 and DECMotif Extensions. These bindings are meant for DEC Ada 3.0 and later on OSF/1 and OpenVMS. They should work, or be easily modified to work, on many other Ada compilers and platforms. [http://archive.adaic.com/tools/bindings/Xlib-Xt-Xm-bindings/] X-Windows - Ada/X Toolkit This software package provides an Ada programmatic interface to a set of reusable user interface abstractions known as widgets. The software provides the full functionality of the M.I.T X Consortium Version 11 Release 4 X Window System. The software consists of three components: an Ada binding to the Xlib layer, an Ada implementation of the Xt Intrinsics layer, and an Ada widget library. The Ada binding to the Xlib layer upgrades the STARS Foundations Ada Xlib binding, and provides a protocol interface with a set of graphics drawing primitives. The Xt Intrinsics layer provides a policy-free mechanism for creating and managing user interface objects. User interface objects are contained in the widget library, which consists of a small set of commonly used user interface abstractions such as scroll bars and command buttons. This product was developed as part of the Software Technology for Adaptable, Reliable Systems (STARS) program, sponsored by the Advanced Research Projects Agency (ARPA). [http://archive.adaic.com/tools/bindings/X-toolkit/]
This GKS interface allows the application programmer to make Ada calls to a wide variety of graphics and plotting routines, and supports several types of graphics terminals.
[http://archive.adaic.com/tools/bindings/GKS]
Information Resource Dictionary System (IRDS) This document is an editor's draft of the Information Resource Dictionary System (IRDS) Services Interface, dated 3 July 1992, ISO/IEC 10728: 1993 (E), Draft International Standard. It is for the purpose of review by participants in the SC21 editing committee. This draft standard defines an interface to describe and control an enterprise's information resources. IRDS interfaces to an SQL type of database using services in the form of function and procedure calls. A draft Ada binding to IRDS has been submitted to the ISO IRDS Rapporteur Group as a proposed Annex D to ISO/IEC 10728. It is currently a working draft. [archive.adaic.com/tools/bindings/IRDS] Microsoft Windows - Win32Ada Binding Win32Ada is a complete thin binding to Win32, the 32-bit interface to Microsoft Windows 95 And Microsoft Windows NT. (A subset of Win32 (Win32S) is supported on Windows 3.1.) Win32Ada's capabilities include: creation of processes, windows, and menus; graphics, keyboard, and mouse control; MAPI (mail); Dynamic Data Exchange (DDE); Object Linking and Embedding (OLE), compound documents; video, sound, and multimedia; and Open Data Base Connectivity (ODBC). That is, everything that is available to a C program. At present, distribution arrangements have not yet been finalized. In the interim, those interested in obtaining copies may contact Dennis Struble at Intermetrics, Inc., for further information. Dennis Struble Intermetrics, Inc. 733 Concord Avenue Cambridge, MA 02138 tel: 617/661-1840 fax: 617/868-2843 MIL-STD 1553 Data Bus - Generic Avionics Data Bus Tool Kit (GADBTK) This is the source code for the Generic Avionics Data Bus Tool Kit (GADBTK), which is part of the Ada Joint Program Office's Ada Technology Insertion Program (ATIP) binding project. The GADBTK project is intended to provide a strong Ada software binding to the Military Standard 1553 data bus. The bus is used for time multiplex data communications between different sensor and computer subsystems on many current military platforms. The associated documentation is available through the Defense Technical Information Center (DTIC) and the National Technical Information Service (NTIS). [http://archive.adaic.com/tools/bindings/gadbtk] OS2 - Thin Ada 95 Binding to the OS/2 API The OS2 package provides thin, direct Ada 95 bindings to the most important sections of OS/2's GUI API, i.e. Win, GPI, Dev, Spl, DDF, Prf, Drg. 1.) Use the BUILD command file to compile the bindings and create the sample program (WINTEST). 2.) Note that some names and types are not exactly identical to the CAPI definitions. Declarations like "HWND hwnd", anonymous arrays as structure members, pointers etc. had to be changed. 3.) Support for other OS/2 APIs than those related to the Presentation Manager has been dropped. The bindings have been created using a customized CBIND6 and tested with GNAT 3.05 on OS/2 Warp v3. The CBIND utility can be obtained from ftp://rational.com/public/tools/cbind/, the GNAT Ada'95 compiler is at ftp://ftp.cs.nyu.edu/pub/gnat/. The base file was OS2EMX.H (part of gcc/emx), thus a copy of the GNU Library General Public License is included with the distribution archive. (A personal note: I still don't understand why all this hardcore legal stuff is necessary and why every piece of code has to include a lengthy all-capitals disclaimer message.) All kinds of feedback are appreciated. POC: Klaus A. Brunner e-mail: kbrun@ibm.net [ftp://cs.nyu.edu/pub/gnat/contrib/os2/bindings/] Package CGI "Package CGI" is an Ada 95 interface to the "Common Gateway Interface" (CGI). This package makes it easier to create Ada programs that can be invoked by World-Wide-Web (WWW) HTTP servers using the standard CGI interface. Using it, you can create Ada programs that perform queries or other processing by request from a WWW user. This package is copyright (C) 1995 David A. Wheeler (wheeler@ida.org). You are free to use it in anything you wish without restriction or payment, but please provide credit if you use this package. This Ada package provides two data access approaches from the CGI: 1.) As an associative array; simply provide the key name (as a string) and the value associated with that key will be returned. 2.) As a sequence of key-value pairs, indexed from 1 to Argument_Count. This access approach is similar to the Ada library Ada.Command_Line. The main access routines support both Ada 95 types String and Unbounded_String. [http://wuarchive.wustl.edu/languages/ada/swcomps/cgi/cgi.html] Paradox Dbms_Template represents a simple DBMS class. It is single user, but it can be extended for networks. It was created as a binding to Paradox Engine 1.0. It can serve as a binding to other DBMS's such as dBASE and Clipper by purchasing a C library for accessing other DBMS's and changing the body of Dbms_Template. This binding requires Paradox Engine and Microsoft's C library (large model). [http://archive.adaic.com/tools/bindings/paradox] Portable Common Tool Environment (PCTE) This is the Ada Portable Common Tool Environment (PCTE) binding (AdaPCTE). It provides Ada applications access to a PCTE object base as defined by the European Computer Manufacturers Association (ECMA) Ada PCTE specification (Standard ECMA-162 Ada Language Binding, December 1991). This "alpha" release provides a minimal set of interfaces to permit Ada developers to experiment with and evaluate PCTE for use in future Ada applications. It is expected that later releases will complete the binding. Since no conforming implementations of ECMA PCTE existed as defined in Standard ECMA-149, AdaPCTE ws implemented on GIE Emeraude's PCTE V12.2 Fix 7 or V12.3. Because only a subset of the ECMA PCTE Ada specification had been implemented for the 0.2 release, and because ECMA PCTE functionality differs somewhat from Emeraude PCTE functionality, the complete functionality of Emeraude PCTE is not available to Ada applications using these bindings. [http://archive.adaic.com/tools/bindings/PCTE] POSIX - Ada 83 The following statement is provided by the IEEE and governs the use of this code: These package specifications were extracted from IEEE Std 1003.5-1992, IEEE Standard for Information Technology - POSIX Ada Language Interfaces - Part 1: Binding System Application Program Interface, copyright (c) 1992 by the Institute of Electrical and Electronics Engineers, Inc. These package specifications represent only a portion of the document and are not to be interpreteted as the approved consensus standard. The IEEE Std 1003.5-1992 must be used in conjunction with these package specifications in order to claim conformance. The IEEE takes no responsibility for and will assume no liability for damages resulting from the reader's misinpretation of said information resulting from its out of context nature. To order copies of the IEEE Std 1003.5-1992, please contact the IEEE Service Center at 445 Hoes Lane, PO Box 1331, Piscataway, NJ 08855-1331; via phone at 1-800-678-IEEE, 908-981-1393; or via fax at 908-981-9667. Note that these specifications are incomplete, in that the standard identifies some declarations as implementation-defined. In addition, no package bodies are provided. This standard was developed by IEEE Working Group P1003.5. For more information on this group, contact the Chairman, James Lonjers, lonjers@vfl.paramax.com or 805/987-9457. Formal requests for interpretations of this standard should be addressed to the IEEE, as specified in the document. An e-mail list discussing ongoing POSIX/Ada binding work is available as "posix-ada@verdix.com". Send e-mail to "posixadarequest@verdix.com" to be included on the list. Current work in IEEE P1003.5 consists of the Ada Binding to POSIX Real-Time Extensions (IEEE Project P1003.20) and current interpretations of IEEE Std 1003.5-1992. [http://archive.adaic.com/tools/bindings/POSIX/ada83/] POSIX - Ada 95 These are POSIX .5 library specs. The library is under development, and this is a work-in-progress version release. A work-in-progress implementation of the package bodies should also be available shortly. (For more information via the World Wide Web, look into the PART Home page: "http://www.cs.fsu.edu/~doh/") For questions and suggestions, e-mail can be sent to part@ada.cs.fsu.edu. [http://archive.adaic.com/tools/bindings/POSIX/ada95/] POSIX Ada Run-Time System Libraries (PART) This is a pointer file to the POSIX Ada Run-Time System Libraries (PART), which contains code from one of the projects supported by the Ada Joint Program Office's FY91 Ada Technology Insertion Program (ATIP). PART is available to the public from Florida State University (FSU) for non-commercial use. See copyright note near end. PART can be obtained by anonymous FTP from FSU's ftp server (ftp.cs.fsu.edu). The release there is version 1.2 of the POSIX Ada Run-Time System Library (PART) using a CARTS interface [3]. It is implemented over the POSIX 1003.4a Threads Extension (Pthreads) [1], and requires access to an interface compliant with that standard. The purpose of this release of PART is to demonstrate the feasibility of implementing an Ada '83 run-time system over POSIX threads, and disclose the full details of one such implementation. By mapping Ada tasks onto POSIX threads, this approach should enhance the portability of Ada runtime systems and provide a platform for exploiting shared-memory multiprocessors. [ftp://ftp.cs.fsu.edu/pub/PART] SQL - A Prototype Binding of ANSI-Standard SQL to Ada Supporting the SAME Methodology This is the final release of the Computer Software Configuration Item (CSCI) identified as the IBM STARS Prototype Binding of Ansi-Standard SQL to Ada Supporting the SQL Ada Module Extensions (SAME) Methodology. This software was developed for the DoD's Software Technology for Adaptable, Reliable Systems (STARS) Program. The primary purpose of the Binding of ANSI-Standard SQL to Ada is to provide access to relational data bases that support SQL from within an Ada program. The secondary purpose of this project is to provide this access by implementing the SAME approach to data base interface as described in Guidelines for Use of the SAME, Technical Report CMU/SEI-89-TR-16. SAME is a specialization of the modular approach for implementing an interface between a programming language (in this case Ada) and a DBMS whose data manipulation language is SQL. SAME is an extension of the existing SQL module language standard meant to maximize Ada language capabilities. SAME provides an abstraction/mapping between an Ada program's objects and the weakly typed SQL concrete types through a layer that exists between the application program and the actual interface to the data base. To use SAME without any automated support would be a time consuming task. This project will provide such automated support. [http://archive.adaic.com/tools/bindings/SQL] SQL - SAMeDL Development Environment This is a release of the Intermetrics SAMeDL Development Environment. This software has been provided as part of a research and development effort under the Ada Technology Insertion Program (ATIP) in an effort to investigate and promote Ada/SQL interfacing technology, namely SAMeDL, within the Ada community. Although all attempts have been made to make this software as robust as possible, it is not of production quality. Deficiencies and problems are inherent and should not be used as a means for negatively judging the merits of SAMeDL. The challenges pertaining to the use of Ada and SQL in a well-engineered information system led to the formation of the SQL Ada Module Extension Design Committee (SAME-DC) at the Software Engineering Institute (SEI). The committee developed the SQL Ada Module Extension (SAME) Methodology to support and extend the modular approach to using Ada and SQL in database applications. The language which is used to implement SAME is the SQL Ada Module Description Language, or SAMeDL. Using the SAME methodology requires that SQL statements be separated from the Ada application code, and encapsulated in separate modules. The SQL statements are not embedded in the Ada packages, thus isolating the Ada application from the DBMS design and implementation. SAMeDL is designed to facilitate the construction of Ada database applications that use the SAME methodology. [http://archive.adaic.com/tools/bindings/SAMeDL/] TCP/IP - Secure File Transfer Program (SFTP) The Secure File Transfer Program provides a means of transferring sensitive information from one computer system to another. This system implements Transmission Control Protocol (TCP) and conforms to RFC:793. TCP provides a reliable communication between pairs of processes in logically distinct hosts on networks and sets of interconnected networks. The TCP resides in the transport layer of the DoD Internet Model. The system encapsulates messages received from the utility layer protocols, which reside directly above, and passes the packet to the Internet layer (communicates with the Internet Protocol (IP)). The TCP supports the following functions: connection-oriented, reliable data transfer, ordered data transfer delivery, full-duplex, and flow control. This product was developed as part of the Software Technology for Adaptable, Reliable Systems (STARS) program, sponsored by the Advanced Research Projects Agency (ARPA). [http://archive.adaic.com/tools/SFTP/] Transportable Applications Enviornment (TAE) The Transportable Applications Environment (TAE) Project is a state-of-the-art user interface development and management system, that provides services and tools for developing and managing graphically-oriented user interfaces, as well as providing common application executive services. The main component of TAE Plus is a WYSIWYG user interface designer's Workbench that allows an application developer to interactively construct a graphical user interface (GUI) by arranging and manipulating TAE Plus "interaction objects". These interaction objects include both user entry items (e.g., radio buttons, text keyin, icon buttons) and real-time dynamic data objects (e.g., dials, sliders, gauges, and discrete picture sequences). The Workbench also provides the capability to dynamically define "connections" between interaction objects, as well as to rehearse the designed GUI dialogue. The TAE Plus Workbench is a tool for building user interfaces. It is designed for both non-programmers and programmers. Knowledge of OSF/Motif or the X Window System is not necessary. New TAE Plus users quickly master the intuitive operation of the Workbench and can build working interfaces in a matter of hours - often without consulting manuals. As an aid to bridging the gap between the development and runtime environments, the Workbench provides the option of generating a skeleton source code program (in C, ANSI C, C++, and Ada) which fully displays and manages the designed GUI. This Workbench-generated code includes the calls to the TAE Plus runtime services and the Window Programming Tools (WPTs). The separation of the user interface from the application code allows changes to be made easily to an application's GUI without recompiling or relinking the software, and also hides the complexities of the underlying X and Motif windowing services from the application. [http://groucho.gsfc.nasa.gov/Code_520/Code_522/Projects/TAE/Bulletin/TAE_Bulletin3.htm] Unix - Paradise Paradise is a set of Ada packages intended to provide an interface to the Unix operating system, and more specifically to the communication routines, that are accessed via file descriptors. It lets the Ada programmer use files, pipes, and sockets, as well as signals, error codes, environment variables, etc., using an interface that looks as much as possible like the C interface. Paradise supports multi-tasking: any input or output is blocking for the calling task only, and not for the entire process. Paradise is intended to be system-independant and compiler-independant; so far, it works on four environments: - SunOS 4.1 (Sparc) and SunAda (Verdix 6.1) compiler - SunOS 4.1 (Sparc) and TeleSoft 4.1.1 compiler - HP-UX (HP9000/700) and HP-Ada (Alsys) compiler - HP-UX (HP9000/700) and Verdix 6.3d compiler It is known not to work well on SunOS/Alsys, because of problems on signal handlers; For people who would like to port it to other environments, information on portability is displayed inside the code. A programmer's guide should appear in future versions. Send all comments, bug reports, patches to "paradise@cenatls.cena.dgac.fr" (Nicolas Courtel). [http://archive.adaic.com/tools/bindings/paradise/] Ada Binding to XModem and Kermit Network Protocols This is a set of Ada packages that implement the file transfer protocols only (for X_Modem and Kermit protocols). The documentation is complete and the implementation encourages reuse of this tool in a variety of ways.hpot [http://archive.adaic.com/tools/bindings/xmodem-kermit/] X-Windows - Motif These are the BCA/STARS Motif Ada bindings. Motif is an X-Windows based toolkit for user interface development. The BCA Motif Ada bindings are a binding to (not an implementation of): - the Motif widget (user interface object) set, and - a subset of the Motif functions You must have the Motif object code libraries to use this software. The bindings were developed using Motif version 1.0.1 and have not been tested under 1.1. [http://archive.adaic.com/tools/bindings/MOTIF/] X-Windows - X, Xlib, Xt, Motif This is a complete set of Ada Xlib/Xt/Motif bindings, and a set of examples. The Ada Xlib/Xt/Motif bindings require the existance of the C Xlib/Xt/Motif bindings. (Ie: the include files and the libraries are available). The actual bindings are pure Ada code, produced by tools written in Ada and C, with all the tools etc. in the tar file. The C tools are compiled using your system's Xlib, Xt, and Xm include files, and they use the information found there to produce Ada representation clauses, constants, etc. that exactly match the C representations of the structures, etc. This is how this kit can reliably generate bindings for a range of architectures, regardless of word-size, alignment-rules, etc. These bindings are for X11R4/Motif 1.1, X11R5/Motif 1.2 and DECMotif Extensions. These bindings are meant for DEC Ada 3.0 and later on OSF/1 and OpenVMS. They should work, or be easily modified to work, on many other Ada compilers and platforms. [http://archive.adaic.com/tools/bindings/Xlib-Xt-Xm-bindings/] X-Windows - Ada/X Toolkit This software package provides an Ada programmatic interface to a set of reusable user interface abstractions known as widgets. The software provides the full functionality of the M.I.T X Consortium Version 11 Release 4 X Window System. The software consists of three components: an Ada binding to the Xlib layer, an Ada implementation of the Xt Intrinsics layer, and an Ada widget library. The Ada binding to the Xlib layer upgrades the STARS Foundations Ada Xlib binding, and provides a protocol interface with a set of graphics drawing primitives. The Xt Intrinsics layer provides a policy-free mechanism for creating and managing user interface objects. User interface objects are contained in the widget library, which consists of a small set of commonly used user interface abstractions such as scroll bars and command buttons. This product was developed as part of the Software Technology for Adaptable, Reliable Systems (STARS) program, sponsored by the Advanced Research Projects Agency (ARPA). [http://archive.adaic.com/tools/bindings/X-toolkit/]
This draft standard defines an interface to describe and control an enterprise's information resources. IRDS interfaces to an SQL type of database using services in the form of function and procedure calls.
A draft Ada binding to IRDS has been submitted to the ISO IRDS Rapporteur Group as a proposed Annex D to ISO/IEC 10728. It is currently a working draft.
[archive.adaic.com/tools/bindings/IRDS]
Microsoft Windows - Win32Ada Binding Win32Ada is a complete thin binding to Win32, the 32-bit interface to Microsoft Windows 95 And Microsoft Windows NT. (A subset of Win32 (Win32S) is supported on Windows 3.1.) Win32Ada's capabilities include: creation of processes, windows, and menus; graphics, keyboard, and mouse control; MAPI (mail); Dynamic Data Exchange (DDE); Object Linking and Embedding (OLE), compound documents; video, sound, and multimedia; and Open Data Base Connectivity (ODBC). That is, everything that is available to a C program. At present, distribution arrangements have not yet been finalized. In the interim, those interested in obtaining copies may contact Dennis Struble at Intermetrics, Inc., for further information. Dennis Struble Intermetrics, Inc. 733 Concord Avenue Cambridge, MA 02138 tel: 617/661-1840 fax: 617/868-2843 MIL-STD 1553 Data Bus - Generic Avionics Data Bus Tool Kit (GADBTK) This is the source code for the Generic Avionics Data Bus Tool Kit (GADBTK), which is part of the Ada Joint Program Office's Ada Technology Insertion Program (ATIP) binding project. The GADBTK project is intended to provide a strong Ada software binding to the Military Standard 1553 data bus. The bus is used for time multiplex data communications between different sensor and computer subsystems on many current military platforms. The associated documentation is available through the Defense Technical Information Center (DTIC) and the National Technical Information Service (NTIS). [http://archive.adaic.com/tools/bindings/gadbtk] OS2 - Thin Ada 95 Binding to the OS/2 API The OS2 package provides thin, direct Ada 95 bindings to the most important sections of OS/2's GUI API, i.e. Win, GPI, Dev, Spl, DDF, Prf, Drg. 1.) Use the BUILD command file to compile the bindings and create the sample program (WINTEST). 2.) Note that some names and types are not exactly identical to the CAPI definitions. Declarations like "HWND hwnd", anonymous arrays as structure members, pointers etc. had to be changed. 3.) Support for other OS/2 APIs than those related to the Presentation Manager has been dropped. The bindings have been created using a customized CBIND6 and tested with GNAT 3.05 on OS/2 Warp v3. The CBIND utility can be obtained from ftp://rational.com/public/tools/cbind/, the GNAT Ada'95 compiler is at ftp://ftp.cs.nyu.edu/pub/gnat/. The base file was OS2EMX.H (part of gcc/emx), thus a copy of the GNU Library General Public License is included with the distribution archive. (A personal note: I still don't understand why all this hardcore legal stuff is necessary and why every piece of code has to include a lengthy all-capitals disclaimer message.) All kinds of feedback are appreciated. POC: Klaus A. Brunner e-mail: kbrun@ibm.net [ftp://cs.nyu.edu/pub/gnat/contrib/os2/bindings/] Package CGI "Package CGI" is an Ada 95 interface to the "Common Gateway Interface" (CGI). This package makes it easier to create Ada programs that can be invoked by World-Wide-Web (WWW) HTTP servers using the standard CGI interface. Using it, you can create Ada programs that perform queries or other processing by request from a WWW user. This package is copyright (C) 1995 David A. Wheeler (wheeler@ida.org). You are free to use it in anything you wish without restriction or payment, but please provide credit if you use this package. This Ada package provides two data access approaches from the CGI: 1.) As an associative array; simply provide the key name (as a string) and the value associated with that key will be returned. 2.) As a sequence of key-value pairs, indexed from 1 to Argument_Count. This access approach is similar to the Ada library Ada.Command_Line. The main access routines support both Ada 95 types String and Unbounded_String. [http://wuarchive.wustl.edu/languages/ada/swcomps/cgi/cgi.html] Paradox Dbms_Template represents a simple DBMS class. It is single user, but it can be extended for networks. It was created as a binding to Paradox Engine 1.0. It can serve as a binding to other DBMS's such as dBASE and Clipper by purchasing a C library for accessing other DBMS's and changing the body of Dbms_Template. This binding requires Paradox Engine and Microsoft's C library (large model). [http://archive.adaic.com/tools/bindings/paradox] Portable Common Tool Environment (PCTE) This is the Ada Portable Common Tool Environment (PCTE) binding (AdaPCTE). It provides Ada applications access to a PCTE object base as defined by the European Computer Manufacturers Association (ECMA) Ada PCTE specification (Standard ECMA-162 Ada Language Binding, December 1991). This "alpha" release provides a minimal set of interfaces to permit Ada developers to experiment with and evaluate PCTE for use in future Ada applications. It is expected that later releases will complete the binding. Since no conforming implementations of ECMA PCTE existed as defined in Standard ECMA-149, AdaPCTE ws implemented on GIE Emeraude's PCTE V12.2 Fix 7 or V12.3. Because only a subset of the ECMA PCTE Ada specification had been implemented for the 0.2 release, and because ECMA PCTE functionality differs somewhat from Emeraude PCTE functionality, the complete functionality of Emeraude PCTE is not available to Ada applications using these bindings. [http://archive.adaic.com/tools/bindings/PCTE] POSIX - Ada 83 The following statement is provided by the IEEE and governs the use of this code: These package specifications were extracted from IEEE Std 1003.5-1992, IEEE Standard for Information Technology - POSIX Ada Language Interfaces - Part 1: Binding System Application Program Interface, copyright (c) 1992 by the Institute of Electrical and Electronics Engineers, Inc. These package specifications represent only a portion of the document and are not to be interpreteted as the approved consensus standard. The IEEE Std 1003.5-1992 must be used in conjunction with these package specifications in order to claim conformance. The IEEE takes no responsibility for and will assume no liability for damages resulting from the reader's misinpretation of said information resulting from its out of context nature. To order copies of the IEEE Std 1003.5-1992, please contact the IEEE Service Center at 445 Hoes Lane, PO Box 1331, Piscataway, NJ 08855-1331; via phone at 1-800-678-IEEE, 908-981-1393; or via fax at 908-981-9667. Note that these specifications are incomplete, in that the standard identifies some declarations as implementation-defined. In addition, no package bodies are provided. This standard was developed by IEEE Working Group P1003.5. For more information on this group, contact the Chairman, James Lonjers, lonjers@vfl.paramax.com or 805/987-9457. Formal requests for interpretations of this standard should be addressed to the IEEE, as specified in the document. An e-mail list discussing ongoing POSIX/Ada binding work is available as "posix-ada@verdix.com". Send e-mail to "posixadarequest@verdix.com" to be included on the list. Current work in IEEE P1003.5 consists of the Ada Binding to POSIX Real-Time Extensions (IEEE Project P1003.20) and current interpretations of IEEE Std 1003.5-1992. [http://archive.adaic.com/tools/bindings/POSIX/ada83/] POSIX - Ada 95 These are POSIX .5 library specs. The library is under development, and this is a work-in-progress version release. A work-in-progress implementation of the package bodies should also be available shortly. (For more information via the World Wide Web, look into the PART Home page: "http://www.cs.fsu.edu/~doh/") For questions and suggestions, e-mail can be sent to part@ada.cs.fsu.edu. [http://archive.adaic.com/tools/bindings/POSIX/ada95/] POSIX Ada Run-Time System Libraries (PART) This is a pointer file to the POSIX Ada Run-Time System Libraries (PART), which contains code from one of the projects supported by the Ada Joint Program Office's FY91 Ada Technology Insertion Program (ATIP). PART is available to the public from Florida State University (FSU) for non-commercial use. See copyright note near end. PART can be obtained by anonymous FTP from FSU's ftp server (ftp.cs.fsu.edu). The release there is version 1.2 of the POSIX Ada Run-Time System Library (PART) using a CARTS interface [3]. It is implemented over the POSIX 1003.4a Threads Extension (Pthreads) [1], and requires access to an interface compliant with that standard. The purpose of this release of PART is to demonstrate the feasibility of implementing an Ada '83 run-time system over POSIX threads, and disclose the full details of one such implementation. By mapping Ada tasks onto POSIX threads, this approach should enhance the portability of Ada runtime systems and provide a platform for exploiting shared-memory multiprocessors. [ftp://ftp.cs.fsu.edu/pub/PART] SQL - A Prototype Binding of ANSI-Standard SQL to Ada Supporting the SAME Methodology This is the final release of the Computer Software Configuration Item (CSCI) identified as the IBM STARS Prototype Binding of Ansi-Standard SQL to Ada Supporting the SQL Ada Module Extensions (SAME) Methodology. This software was developed for the DoD's Software Technology for Adaptable, Reliable Systems (STARS) Program. The primary purpose of the Binding of ANSI-Standard SQL to Ada is to provide access to relational data bases that support SQL from within an Ada program. The secondary purpose of this project is to provide this access by implementing the SAME approach to data base interface as described in Guidelines for Use of the SAME, Technical Report CMU/SEI-89-TR-16. SAME is a specialization of the modular approach for implementing an interface between a programming language (in this case Ada) and a DBMS whose data manipulation language is SQL. SAME is an extension of the existing SQL module language standard meant to maximize Ada language capabilities. SAME provides an abstraction/mapping between an Ada program's objects and the weakly typed SQL concrete types through a layer that exists between the application program and the actual interface to the data base. To use SAME without any automated support would be a time consuming task. This project will provide such automated support. [http://archive.adaic.com/tools/bindings/SQL] SQL - SAMeDL Development Environment This is a release of the Intermetrics SAMeDL Development Environment. This software has been provided as part of a research and development effort under the Ada Technology Insertion Program (ATIP) in an effort to investigate and promote Ada/SQL interfacing technology, namely SAMeDL, within the Ada community. Although all attempts have been made to make this software as robust as possible, it is not of production quality. Deficiencies and problems are inherent and should not be used as a means for negatively judging the merits of SAMeDL. The challenges pertaining to the use of Ada and SQL in a well-engineered information system led to the formation of the SQL Ada Module Extension Design Committee (SAME-DC) at the Software Engineering Institute (SEI). The committee developed the SQL Ada Module Extension (SAME) Methodology to support and extend the modular approach to using Ada and SQL in database applications. The language which is used to implement SAME is the SQL Ada Module Description Language, or SAMeDL. Using the SAME methodology requires that SQL statements be separated from the Ada application code, and encapsulated in separate modules. The SQL statements are not embedded in the Ada packages, thus isolating the Ada application from the DBMS design and implementation. SAMeDL is designed to facilitate the construction of Ada database applications that use the SAME methodology. [http://archive.adaic.com/tools/bindings/SAMeDL/] TCP/IP - Secure File Transfer Program (SFTP) The Secure File Transfer Program provides a means of transferring sensitive information from one computer system to another. This system implements Transmission Control Protocol (TCP) and conforms to RFC:793. TCP provides a reliable communication between pairs of processes in logically distinct hosts on networks and sets of interconnected networks. The TCP resides in the transport layer of the DoD Internet Model. The system encapsulates messages received from the utility layer protocols, which reside directly above, and passes the packet to the Internet layer (communicates with the Internet Protocol (IP)). The TCP supports the following functions: connection-oriented, reliable data transfer, ordered data transfer delivery, full-duplex, and flow control. This product was developed as part of the Software Technology for Adaptable, Reliable Systems (STARS) program, sponsored by the Advanced Research Projects Agency (ARPA). [http://archive.adaic.com/tools/SFTP/] Transportable Applications Enviornment (TAE) The Transportable Applications Environment (TAE) Project is a state-of-the-art user interface development and management system, that provides services and tools for developing and managing graphically-oriented user interfaces, as well as providing common application executive services. The main component of TAE Plus is a WYSIWYG user interface designer's Workbench that allows an application developer to interactively construct a graphical user interface (GUI) by arranging and manipulating TAE Plus "interaction objects". These interaction objects include both user entry items (e.g., radio buttons, text keyin, icon buttons) and real-time dynamic data objects (e.g., dials, sliders, gauges, and discrete picture sequences). The Workbench also provides the capability to dynamically define "connections" between interaction objects, as well as to rehearse the designed GUI dialogue. The TAE Plus Workbench is a tool for building user interfaces. It is designed for both non-programmers and programmers. Knowledge of OSF/Motif or the X Window System is not necessary. New TAE Plus users quickly master the intuitive operation of the Workbench and can build working interfaces in a matter of hours - often without consulting manuals. As an aid to bridging the gap between the development and runtime environments, the Workbench provides the option of generating a skeleton source code program (in C, ANSI C, C++, and Ada) which fully displays and manages the designed GUI. This Workbench-generated code includes the calls to the TAE Plus runtime services and the Window Programming Tools (WPTs). The separation of the user interface from the application code allows changes to be made easily to an application's GUI without recompiling or relinking the software, and also hides the complexities of the underlying X and Motif windowing services from the application. [http://groucho.gsfc.nasa.gov/Code_520/Code_522/Projects/TAE/Bulletin/TAE_Bulletin3.htm] Unix - Paradise Paradise is a set of Ada packages intended to provide an interface to the Unix operating system, and more specifically to the communication routines, that are accessed via file descriptors. It lets the Ada programmer use files, pipes, and sockets, as well as signals, error codes, environment variables, etc., using an interface that looks as much as possible like the C interface. Paradise supports multi-tasking: any input or output is blocking for the calling task only, and not for the entire process. Paradise is intended to be system-independant and compiler-independant; so far, it works on four environments: - SunOS 4.1 (Sparc) and SunAda (Verdix 6.1) compiler - SunOS 4.1 (Sparc) and TeleSoft 4.1.1 compiler - HP-UX (HP9000/700) and HP-Ada (Alsys) compiler - HP-UX (HP9000/700) and Verdix 6.3d compiler It is known not to work well on SunOS/Alsys, because of problems on signal handlers; For people who would like to port it to other environments, information on portability is displayed inside the code. A programmer's guide should appear in future versions. Send all comments, bug reports, patches to "paradise@cenatls.cena.dgac.fr" (Nicolas Courtel). [http://archive.adaic.com/tools/bindings/paradise/] Ada Binding to XModem and Kermit Network Protocols This is a set of Ada packages that implement the file transfer protocols only (for X_Modem and Kermit protocols). The documentation is complete and the implementation encourages reuse of this tool in a variety of ways.hpot [http://archive.adaic.com/tools/bindings/xmodem-kermit/] X-Windows - Motif These are the BCA/STARS Motif Ada bindings. Motif is an X-Windows based toolkit for user interface development. The BCA Motif Ada bindings are a binding to (not an implementation of): - the Motif widget (user interface object) set, and - a subset of the Motif functions You must have the Motif object code libraries to use this software. The bindings were developed using Motif version 1.0.1 and have not been tested under 1.1. [http://archive.adaic.com/tools/bindings/MOTIF/] X-Windows - X, Xlib, Xt, Motif This is a complete set of Ada Xlib/Xt/Motif bindings, and a set of examples. The Ada Xlib/Xt/Motif bindings require the existance of the C Xlib/Xt/Motif bindings. (Ie: the include files and the libraries are available). The actual bindings are pure Ada code, produced by tools written in Ada and C, with all the tools etc. in the tar file. The C tools are compiled using your system's Xlib, Xt, and Xm include files, and they use the information found there to produce Ada representation clauses, constants, etc. that exactly match the C representations of the structures, etc. This is how this kit can reliably generate bindings for a range of architectures, regardless of word-size, alignment-rules, etc. These bindings are for X11R4/Motif 1.1, X11R5/Motif 1.2 and DECMotif Extensions. These bindings are meant for DEC Ada 3.0 and later on OSF/1 and OpenVMS. They should work, or be easily modified to work, on many other Ada compilers and platforms. [http://archive.adaic.com/tools/bindings/Xlib-Xt-Xm-bindings/] X-Windows - Ada/X Toolkit This software package provides an Ada programmatic interface to a set of reusable user interface abstractions known as widgets. The software provides the full functionality of the M.I.T X Consortium Version 11 Release 4 X Window System. The software consists of three components: an Ada binding to the Xlib layer, an Ada implementation of the Xt Intrinsics layer, and an Ada widget library. The Ada binding to the Xlib layer upgrades the STARS Foundations Ada Xlib binding, and provides a protocol interface with a set of graphics drawing primitives. The Xt Intrinsics layer provides a policy-free mechanism for creating and managing user interface objects. User interface objects are contained in the widget library, which consists of a small set of commonly used user interface abstractions such as scroll bars and command buttons. This product was developed as part of the Software Technology for Adaptable, Reliable Systems (STARS) program, sponsored by the Advanced Research Projects Agency (ARPA). [http://archive.adaic.com/tools/bindings/X-toolkit/]
At present, distribution arrangements have not yet been finalized. In the interim, those interested in obtaining copies may contact Dennis Struble at Intermetrics, Inc., for further information.
MIL-STD 1553 Data Bus - Generic Avionics Data Bus Tool Kit (GADBTK) This is the source code for the Generic Avionics Data Bus Tool Kit (GADBTK), which is part of the Ada Joint Program Office's Ada Technology Insertion Program (ATIP) binding project. The GADBTK project is intended to provide a strong Ada software binding to the Military Standard 1553 data bus. The bus is used for time multiplex data communications between different sensor and computer subsystems on many current military platforms. The associated documentation is available through the Defense Technical Information Center (DTIC) and the National Technical Information Service (NTIS). [http://archive.adaic.com/tools/bindings/gadbtk] OS2 - Thin Ada 95 Binding to the OS/2 API The OS2 package provides thin, direct Ada 95 bindings to the most important sections of OS/2's GUI API, i.e. Win, GPI, Dev, Spl, DDF, Prf, Drg. 1.) Use the BUILD command file to compile the bindings and create the sample program (WINTEST). 2.) Note that some names and types are not exactly identical to the CAPI definitions. Declarations like "HWND hwnd", anonymous arrays as structure members, pointers etc. had to be changed. 3.) Support for other OS/2 APIs than those related to the Presentation Manager has been dropped. The bindings have been created using a customized CBIND6 and tested with GNAT 3.05 on OS/2 Warp v3. The CBIND utility can be obtained from ftp://rational.com/public/tools/cbind/, the GNAT Ada'95 compiler is at ftp://ftp.cs.nyu.edu/pub/gnat/. The base file was OS2EMX.H (part of gcc/emx), thus a copy of the GNU Library General Public License is included with the distribution archive. (A personal note: I still don't understand why all this hardcore legal stuff is necessary and why every piece of code has to include a lengthy all-capitals disclaimer message.) All kinds of feedback are appreciated. POC: Klaus A. Brunner e-mail: kbrun@ibm.net [ftp://cs.nyu.edu/pub/gnat/contrib/os2/bindings/] Package CGI "Package CGI" is an Ada 95 interface to the "Common Gateway Interface" (CGI). This package makes it easier to create Ada programs that can be invoked by World-Wide-Web (WWW) HTTP servers using the standard CGI interface. Using it, you can create Ada programs that perform queries or other processing by request from a WWW user. This package is copyright (C) 1995 David A. Wheeler (wheeler@ida.org). You are free to use it in anything you wish without restriction or payment, but please provide credit if you use this package. This Ada package provides two data access approaches from the CGI: 1.) As an associative array; simply provide the key name (as a string) and the value associated with that key will be returned. 2.) As a sequence of key-value pairs, indexed from 1 to Argument_Count. This access approach is similar to the Ada library Ada.Command_Line. The main access routines support both Ada 95 types String and Unbounded_String. [http://wuarchive.wustl.edu/languages/ada/swcomps/cgi/cgi.html] Paradox Dbms_Template represents a simple DBMS class. It is single user, but it can be extended for networks. It was created as a binding to Paradox Engine 1.0. It can serve as a binding to other DBMS's such as dBASE and Clipper by purchasing a C library for accessing other DBMS's and changing the body of Dbms_Template. This binding requires Paradox Engine and Microsoft's C library (large model). [http://archive.adaic.com/tools/bindings/paradox] Portable Common Tool Environment (PCTE) This is the Ada Portable Common Tool Environment (PCTE) binding (AdaPCTE). It provides Ada applications access to a PCTE object base as defined by the European Computer Manufacturers Association (ECMA) Ada PCTE specification (Standard ECMA-162 Ada Language Binding, December 1991). This "alpha" release provides a minimal set of interfaces to permit Ada developers to experiment with and evaluate PCTE for use in future Ada applications. It is expected that later releases will complete the binding. Since no conforming implementations of ECMA PCTE existed as defined in Standard ECMA-149, AdaPCTE ws implemented on GIE Emeraude's PCTE V12.2 Fix 7 or V12.3. Because only a subset of the ECMA PCTE Ada specification had been implemented for the 0.2 release, and because ECMA PCTE functionality differs somewhat from Emeraude PCTE functionality, the complete functionality of Emeraude PCTE is not available to Ada applications using these bindings. [http://archive.adaic.com/tools/bindings/PCTE] POSIX - Ada 83 The following statement is provided by the IEEE and governs the use of this code: These package specifications were extracted from IEEE Std 1003.5-1992, IEEE Standard for Information Technology - POSIX Ada Language Interfaces - Part 1: Binding System Application Program Interface, copyright (c) 1992 by the Institute of Electrical and Electronics Engineers, Inc. These package specifications represent only a portion of the document and are not to be interpreteted as the approved consensus standard. The IEEE Std 1003.5-1992 must be used in conjunction with these package specifications in order to claim conformance. The IEEE takes no responsibility for and will assume no liability for damages resulting from the reader's misinpretation of said information resulting from its out of context nature. To order copies of the IEEE Std 1003.5-1992, please contact the IEEE Service Center at 445 Hoes Lane, PO Box 1331, Piscataway, NJ 08855-1331; via phone at 1-800-678-IEEE, 908-981-1393; or via fax at 908-981-9667. Note that these specifications are incomplete, in that the standard identifies some declarations as implementation-defined. In addition, no package bodies are provided. This standard was developed by IEEE Working Group P1003.5. For more information on this group, contact the Chairman, James Lonjers, lonjers@vfl.paramax.com or 805/987-9457. Formal requests for interpretations of this standard should be addressed to the IEEE, as specified in the document. An e-mail list discussing ongoing POSIX/Ada binding work is available as "posix-ada@verdix.com". Send e-mail to "posixadarequest@verdix.com" to be included on the list. Current work in IEEE P1003.5 consists of the Ada Binding to POSIX Real-Time Extensions (IEEE Project P1003.20) and current interpretations of IEEE Std 1003.5-1992. [http://archive.adaic.com/tools/bindings/POSIX/ada83/] POSIX - Ada 95 These are POSIX .5 library specs. The library is under development, and this is a work-in-progress version release. A work-in-progress implementation of the package bodies should also be available shortly. (For more information via the World Wide Web, look into the PART Home page: "http://www.cs.fsu.edu/~doh/") For questions and suggestions, e-mail can be sent to part@ada.cs.fsu.edu. [http://archive.adaic.com/tools/bindings/POSIX/ada95/] POSIX Ada Run-Time System Libraries (PART) This is a pointer file to the POSIX Ada Run-Time System Libraries (PART), which contains code from one of the projects supported by the Ada Joint Program Office's FY91 Ada Technology Insertion Program (ATIP). PART is available to the public from Florida State University (FSU) for non-commercial use. See copyright note near end. PART can be obtained by anonymous FTP from FSU's ftp server (ftp.cs.fsu.edu). The release there is version 1.2 of the POSIX Ada Run-Time System Library (PART) using a CARTS interface [3]. It is implemented over the POSIX 1003.4a Threads Extension (Pthreads) [1], and requires access to an interface compliant with that standard. The purpose of this release of PART is to demonstrate the feasibility of implementing an Ada '83 run-time system over POSIX threads, and disclose the full details of one such implementation. By mapping Ada tasks onto POSIX threads, this approach should enhance the portability of Ada runtime systems and provide a platform for exploiting shared-memory multiprocessors. [ftp://ftp.cs.fsu.edu/pub/PART] SQL - A Prototype Binding of ANSI-Standard SQL to Ada Supporting the SAME Methodology This is the final release of the Computer Software Configuration Item (CSCI) identified as the IBM STARS Prototype Binding of Ansi-Standard SQL to Ada Supporting the SQL Ada Module Extensions (SAME) Methodology. This software was developed for the DoD's Software Technology for Adaptable, Reliable Systems (STARS) Program. The primary purpose of the Binding of ANSI-Standard SQL to Ada is to provide access to relational data bases that support SQL from within an Ada program. The secondary purpose of this project is to provide this access by implementing the SAME approach to data base interface as described in Guidelines for Use of the SAME, Technical Report CMU/SEI-89-TR-16. SAME is a specialization of the modular approach for implementing an interface between a programming language (in this case Ada) and a DBMS whose data manipulation language is SQL. SAME is an extension of the existing SQL module language standard meant to maximize Ada language capabilities. SAME provides an abstraction/mapping between an Ada program's objects and the weakly typed SQL concrete types through a layer that exists between the application program and the actual interface to the data base. To use SAME without any automated support would be a time consuming task. This project will provide such automated support. [http://archive.adaic.com/tools/bindings/SQL] SQL - SAMeDL Development Environment This is a release of the Intermetrics SAMeDL Development Environment. This software has been provided as part of a research and development effort under the Ada Technology Insertion Program (ATIP) in an effort to investigate and promote Ada/SQL interfacing technology, namely SAMeDL, within the Ada community. Although all attempts have been made to make this software as robust as possible, it is not of production quality. Deficiencies and problems are inherent and should not be used as a means for negatively judging the merits of SAMeDL. The challenges pertaining to the use of Ada and SQL in a well-engineered information system led to the formation of the SQL Ada Module Extension Design Committee (SAME-DC) at the Software Engineering Institute (SEI). The committee developed the SQL Ada Module Extension (SAME) Methodology to support and extend the modular approach to using Ada and SQL in database applications. The language which is used to implement SAME is the SQL Ada Module Description Language, or SAMeDL. Using the SAME methodology requires that SQL statements be separated from the Ada application code, and encapsulated in separate modules. The SQL statements are not embedded in the Ada packages, thus isolating the Ada application from the DBMS design and implementation. SAMeDL is designed to facilitate the construction of Ada database applications that use the SAME methodology. [http://archive.adaic.com/tools/bindings/SAMeDL/] TCP/IP - Secure File Transfer Program (SFTP) The Secure File Transfer Program provides a means of transferring sensitive information from one computer system to another. This system implements Transmission Control Protocol (TCP) and conforms to RFC:793. TCP provides a reliable communication between pairs of processes in logically distinct hosts on networks and sets of interconnected networks. The TCP resides in the transport layer of the DoD Internet Model. The system encapsulates messages received from the utility layer protocols, which reside directly above, and passes the packet to the Internet layer (communicates with the Internet Protocol (IP)). The TCP supports the following functions: connection-oriented, reliable data transfer, ordered data transfer delivery, full-duplex, and flow control. This product was developed as part of the Software Technology for Adaptable, Reliable Systems (STARS) program, sponsored by the Advanced Research Projects Agency (ARPA). [http://archive.adaic.com/tools/SFTP/] Transportable Applications Enviornment (TAE) The Transportable Applications Environment (TAE) Project is a state-of-the-art user interface development and management system, that provides services and tools for developing and managing graphically-oriented user interfaces, as well as providing common application executive services. The main component of TAE Plus is a WYSIWYG user interface designer's Workbench that allows an application developer to interactively construct a graphical user interface (GUI) by arranging and manipulating TAE Plus "interaction objects". These interaction objects include both user entry items (e.g., radio buttons, text keyin, icon buttons) and real-time dynamic data objects (e.g., dials, sliders, gauges, and discrete picture sequences). The Workbench also provides the capability to dynamically define "connections" between interaction objects, as well as to rehearse the designed GUI dialogue. The TAE Plus Workbench is a tool for building user interfaces. It is designed for both non-programmers and programmers. Knowledge of OSF/Motif or the X Window System is not necessary. New TAE Plus users quickly master the intuitive operation of the Workbench and can build working interfaces in a matter of hours - often without consulting manuals. As an aid to bridging the gap between the development and runtime environments, the Workbench provides the option of generating a skeleton source code program (in C, ANSI C, C++, and Ada) which fully displays and manages the designed GUI. This Workbench-generated code includes the calls to the TAE Plus runtime services and the Window Programming Tools (WPTs). The separation of the user interface from the application code allows changes to be made easily to an application's GUI without recompiling or relinking the software, and also hides the complexities of the underlying X and Motif windowing services from the application. [http://groucho.gsfc.nasa.gov/Code_520/Code_522/Projects/TAE/Bulletin/TAE_Bulletin3.htm] Unix - Paradise Paradise is a set of Ada packages intended to provide an interface to the Unix operating system, and more specifically to the communication routines, that are accessed via file descriptors. It lets the Ada programmer use files, pipes, and sockets, as well as signals, error codes, environment variables, etc., using an interface that looks as much as possible like the C interface. Paradise supports multi-tasking: any input or output is blocking for the calling task only, and not for the entire process. Paradise is intended to be system-independant and compiler-independant; so far, it works on four environments: - SunOS 4.1 (Sparc) and SunAda (Verdix 6.1) compiler - SunOS 4.1 (Sparc) and TeleSoft 4.1.1 compiler - HP-UX (HP9000/700) and HP-Ada (Alsys) compiler - HP-UX (HP9000/700) and Verdix 6.3d compiler It is known not to work well on SunOS/Alsys, because of problems on signal handlers; For people who would like to port it to other environments, information on portability is displayed inside the code. A programmer's guide should appear in future versions. Send all comments, bug reports, patches to "paradise@cenatls.cena.dgac.fr" (Nicolas Courtel). [http://archive.adaic.com/tools/bindings/paradise/] Ada Binding to XModem and Kermit Network Protocols This is a set of Ada packages that implement the file transfer protocols only (for X_Modem and Kermit protocols). The documentation is complete and the implementation encourages reuse of this tool in a variety of ways.hpot [http://archive.adaic.com/tools/bindings/xmodem-kermit/] X-Windows - Motif These are the BCA/STARS Motif Ada bindings. Motif is an X-Windows based toolkit for user interface development. The BCA Motif Ada bindings are a binding to (not an implementation of): - the Motif widget (user interface object) set, and - a subset of the Motif functions You must have the Motif object code libraries to use this software. The bindings were developed using Motif version 1.0.1 and have not been tested under 1.1. [http://archive.adaic.com/tools/bindings/MOTIF/] X-Windows - X, Xlib, Xt, Motif This is a complete set of Ada Xlib/Xt/Motif bindings, and a set of examples. The Ada Xlib/Xt/Motif bindings require the existance of the C Xlib/Xt/Motif bindings. (Ie: the include files and the libraries are available). The actual bindings are pure Ada code, produced by tools written in Ada and C, with all the tools etc. in the tar file. The C tools are compiled using your system's Xlib, Xt, and Xm include files, and they use the information found there to produce Ada representation clauses, constants, etc. that exactly match the C representations of the structures, etc. This is how this kit can reliably generate bindings for a range of architectures, regardless of word-size, alignment-rules, etc. These bindings are for X11R4/Motif 1.1, X11R5/Motif 1.2 and DECMotif Extensions. These bindings are meant for DEC Ada 3.0 and later on OSF/1 and OpenVMS. They should work, or be easily modified to work, on many other Ada compilers and platforms. [http://archive.adaic.com/tools/bindings/Xlib-Xt-Xm-bindings/] X-Windows - Ada/X Toolkit This software package provides an Ada programmatic interface to a set of reusable user interface abstractions known as widgets. The software provides the full functionality of the M.I.T X Consortium Version 11 Release 4 X Window System. The software consists of three components: an Ada binding to the Xlib layer, an Ada implementation of the Xt Intrinsics layer, and an Ada widget library. The Ada binding to the Xlib layer upgrades the STARS Foundations Ada Xlib binding, and provides a protocol interface with a set of graphics drawing primitives. The Xt Intrinsics layer provides a policy-free mechanism for creating and managing user interface objects. User interface objects are contained in the widget library, which consists of a small set of commonly used user interface abstractions such as scroll bars and command buttons. This product was developed as part of the Software Technology for Adaptable, Reliable Systems (STARS) program, sponsored by the Advanced Research Projects Agency (ARPA). [http://archive.adaic.com/tools/bindings/X-toolkit/]
The associated documentation is available through the Defense Technical Information Center (DTIC) and the National Technical Information Service (NTIS).
[http://archive.adaic.com/tools/bindings/gadbtk]
OS2 - Thin Ada 95 Binding to the OS/2 API The OS2 package provides thin, direct Ada 95 bindings to the most important sections of OS/2's GUI API, i.e. Win, GPI, Dev, Spl, DDF, Prf, Drg. 1.) Use the BUILD command file to compile the bindings and create the sample program (WINTEST). 2.) Note that some names and types are not exactly identical to the CAPI definitions. Declarations like "HWND hwnd", anonymous arrays as structure members, pointers etc. had to be changed. 3.) Support for other OS/2 APIs than those related to the Presentation Manager has been dropped. The bindings have been created using a customized CBIND6 and tested with GNAT 3.05 on OS/2 Warp v3. The CBIND utility can be obtained from ftp://rational.com/public/tools/cbind/, the GNAT Ada'95 compiler is at ftp://ftp.cs.nyu.edu/pub/gnat/. The base file was OS2EMX.H (part of gcc/emx), thus a copy of the GNU Library General Public License is included with the distribution archive. (A personal note: I still don't understand why all this hardcore legal stuff is necessary and why every piece of code has to include a lengthy all-capitals disclaimer message.) All kinds of feedback are appreciated. POC: Klaus A. Brunner e-mail: kbrun@ibm.net [ftp://cs.nyu.edu/pub/gnat/contrib/os2/bindings/] Package CGI "Package CGI" is an Ada 95 interface to the "Common Gateway Interface" (CGI). This package makes it easier to create Ada programs that can be invoked by World-Wide-Web (WWW) HTTP servers using the standard CGI interface. Using it, you can create Ada programs that perform queries or other processing by request from a WWW user. This package is copyright (C) 1995 David A. Wheeler (wheeler@ida.org). You are free to use it in anything you wish without restriction or payment, but please provide credit if you use this package. This Ada package provides two data access approaches from the CGI: 1.) As an associative array; simply provide the key name (as a string) and the value associated with that key will be returned. 2.) As a sequence of key-value pairs, indexed from 1 to Argument_Count. This access approach is similar to the Ada library Ada.Command_Line. The main access routines support both Ada 95 types String and Unbounded_String. [http://wuarchive.wustl.edu/languages/ada/swcomps/cgi/cgi.html] Paradox Dbms_Template represents a simple DBMS class. It is single user, but it can be extended for networks. It was created as a binding to Paradox Engine 1.0. It can serve as a binding to other DBMS's such as dBASE and Clipper by purchasing a C library for accessing other DBMS's and changing the body of Dbms_Template. This binding requires Paradox Engine and Microsoft's C library (large model). [http://archive.adaic.com/tools/bindings/paradox] Portable Common Tool Environment (PCTE) This is the Ada Portable Common Tool Environment (PCTE) binding (AdaPCTE). It provides Ada applications access to a PCTE object base as defined by the European Computer Manufacturers Association (ECMA) Ada PCTE specification (Standard ECMA-162 Ada Language Binding, December 1991). This "alpha" release provides a minimal set of interfaces to permit Ada developers to experiment with and evaluate PCTE for use in future Ada applications. It is expected that later releases will complete the binding. Since no conforming implementations of ECMA PCTE existed as defined in Standard ECMA-149, AdaPCTE ws implemented on GIE Emeraude's PCTE V12.2 Fix 7 or V12.3. Because only a subset of the ECMA PCTE Ada specification had been implemented for the 0.2 release, and because ECMA PCTE functionality differs somewhat from Emeraude PCTE functionality, the complete functionality of Emeraude PCTE is not available to Ada applications using these bindings. [http://archive.adaic.com/tools/bindings/PCTE] POSIX - Ada 83 The following statement is provided by the IEEE and governs the use of this code: These package specifications were extracted from IEEE Std 1003.5-1992, IEEE Standard for Information Technology - POSIX Ada Language Interfaces - Part 1: Binding System Application Program Interface, copyright (c) 1992 by the Institute of Electrical and Electronics Engineers, Inc. These package specifications represent only a portion of the document and are not to be interpreteted as the approved consensus standard. The IEEE Std 1003.5-1992 must be used in conjunction with these package specifications in order to claim conformance. The IEEE takes no responsibility for and will assume no liability for damages resulting from the reader's misinpretation of said information resulting from its out of context nature. To order copies of the IEEE Std 1003.5-1992, please contact the IEEE Service Center at 445 Hoes Lane, PO Box 1331, Piscataway, NJ 08855-1331; via phone at 1-800-678-IEEE, 908-981-1393; or via fax at 908-981-9667. Note that these specifications are incomplete, in that the standard identifies some declarations as implementation-defined. In addition, no package bodies are provided. This standard was developed by IEEE Working Group P1003.5. For more information on this group, contact the Chairman, James Lonjers, lonjers@vfl.paramax.com or 805/987-9457. Formal requests for interpretations of this standard should be addressed to the IEEE, as specified in the document. An e-mail list discussing ongoing POSIX/Ada binding work is available as "posix-ada@verdix.com". Send e-mail to "posixadarequest@verdix.com" to be included on the list. Current work in IEEE P1003.5 consists of the Ada Binding to POSIX Real-Time Extensions (IEEE Project P1003.20) and current interpretations of IEEE Std 1003.5-1992. [http://archive.adaic.com/tools/bindings/POSIX/ada83/] POSIX - Ada 95 These are POSIX .5 library specs. The library is under development, and this is a work-in-progress version release. A work-in-progress implementation of the package bodies should also be available shortly. (For more information via the World Wide Web, look into the PART Home page: "http://www.cs.fsu.edu/~doh/") For questions and suggestions, e-mail can be sent to part@ada.cs.fsu.edu. [http://archive.adaic.com/tools/bindings/POSIX/ada95/] POSIX Ada Run-Time System Libraries (PART) This is a pointer file to the POSIX Ada Run-Time System Libraries (PART), which contains code from one of the projects supported by the Ada Joint Program Office's FY91 Ada Technology Insertion Program (ATIP). PART is available to the public from Florida State University (FSU) for non-commercial use. See copyright note near end. PART can be obtained by anonymous FTP from FSU's ftp server (ftp.cs.fsu.edu). The release there is version 1.2 of the POSIX Ada Run-Time System Library (PART) using a CARTS interface [3]. It is implemented over the POSIX 1003.4a Threads Extension (Pthreads) [1], and requires access to an interface compliant with that standard. The purpose of this release of PART is to demonstrate the feasibility of implementing an Ada '83 run-time system over POSIX threads, and disclose the full details of one such implementation. By mapping Ada tasks onto POSIX threads, this approach should enhance the portability of Ada runtime systems and provide a platform for exploiting shared-memory multiprocessors. [ftp://ftp.cs.fsu.edu/pub/PART] SQL - A Prototype Binding of ANSI-Standard SQL to Ada Supporting the SAME Methodology This is the final release of the Computer Software Configuration Item (CSCI) identified as the IBM STARS Prototype Binding of Ansi-Standard SQL to Ada Supporting the SQL Ada Module Extensions (SAME) Methodology. This software was developed for the DoD's Software Technology for Adaptable, Reliable Systems (STARS) Program. The primary purpose of the Binding of ANSI-Standard SQL to Ada is to provide access to relational data bases that support SQL from within an Ada program. The secondary purpose of this project is to provide this access by implementing the SAME approach to data base interface as described in Guidelines for Use of the SAME, Technical Report CMU/SEI-89-TR-16. SAME is a specialization of the modular approach for implementing an interface between a programming language (in this case Ada) and a DBMS whose data manipulation language is SQL. SAME is an extension of the existing SQL module language standard meant to maximize Ada language capabilities. SAME provides an abstraction/mapping between an Ada program's objects and the weakly typed SQL concrete types through a layer that exists between the application program and the actual interface to the data base. To use SAME without any automated support would be a time consuming task. This project will provide such automated support. [http://archive.adaic.com/tools/bindings/SQL] SQL - SAMeDL Development Environment This is a release of the Intermetrics SAMeDL Development Environment. This software has been provided as part of a research and development effort under the Ada Technology Insertion Program (ATIP) in an effort to investigate and promote Ada/SQL interfacing technology, namely SAMeDL, within the Ada community. Although all attempts have been made to make this software as robust as possible, it is not of production quality. Deficiencies and problems are inherent and should not be used as a means for negatively judging the merits of SAMeDL. The challenges pertaining to the use of Ada and SQL in a well-engineered information system led to the formation of the SQL Ada Module Extension Design Committee (SAME-DC) at the Software Engineering Institute (SEI). The committee developed the SQL Ada Module Extension (SAME) Methodology to support and extend the modular approach to using Ada and SQL in database applications. The language which is used to implement SAME is the SQL Ada Module Description Language, or SAMeDL. Using the SAME methodology requires that SQL statements be separated from the Ada application code, and encapsulated in separate modules. The SQL statements are not embedded in the Ada packages, thus isolating the Ada application from the DBMS design and implementation. SAMeDL is designed to facilitate the construction of Ada database applications that use the SAME methodology. [http://archive.adaic.com/tools/bindings/SAMeDL/] TCP/IP - Secure File Transfer Program (SFTP) The Secure File Transfer Program provides a means of transferring sensitive information from one computer system to another. This system implements Transmission Control Protocol (TCP) and conforms to RFC:793. TCP provides a reliable communication between pairs of processes in logically distinct hosts on networks and sets of interconnected networks. The TCP resides in the transport layer of the DoD Internet Model. The system encapsulates messages received from the utility layer protocols, which reside directly above, and passes the packet to the Internet layer (communicates with the Internet Protocol (IP)). The TCP supports the following functions: connection-oriented, reliable data transfer, ordered data transfer delivery, full-duplex, and flow control. This product was developed as part of the Software Technology for Adaptable, Reliable Systems (STARS) program, sponsored by the Advanced Research Projects Agency (ARPA). [http://archive.adaic.com/tools/SFTP/] Transportable Applications Enviornment (TAE) The Transportable Applications Environment (TAE) Project is a state-of-the-art user interface development and management system, that provides services and tools for developing and managing graphically-oriented user interfaces, as well as providing common application executive services. The main component of TAE Plus is a WYSIWYG user interface designer's Workbench that allows an application developer to interactively construct a graphical user interface (GUI) by arranging and manipulating TAE Plus "interaction objects". These interaction objects include both user entry items (e.g., radio buttons, text keyin, icon buttons) and real-time dynamic data objects (e.g., dials, sliders, gauges, and discrete picture sequences). The Workbench also provides the capability to dynamically define "connections" between interaction objects, as well as to rehearse the designed GUI dialogue. The TAE Plus Workbench is a tool for building user interfaces. It is designed for both non-programmers and programmers. Knowledge of OSF/Motif or the X Window System is not necessary. New TAE Plus users quickly master the intuitive operation of the Workbench and can build working interfaces in a matter of hours - often without consulting manuals. As an aid to bridging the gap between the development and runtime environments, the Workbench provides the option of generating a skeleton source code program (in C, ANSI C, C++, and Ada) which fully displays and manages the designed GUI. This Workbench-generated code includes the calls to the TAE Plus runtime services and the Window Programming Tools (WPTs). The separation of the user interface from the application code allows changes to be made easily to an application's GUI without recompiling or relinking the software, and also hides the complexities of the underlying X and Motif windowing services from the application. [http://groucho.gsfc.nasa.gov/Code_520/Code_522/Projects/TAE/Bulletin/TAE_Bulletin3.htm] Unix - Paradise Paradise is a set of Ada packages intended to provide an interface to the Unix operating system, and more specifically to the communication routines, that are accessed via file descriptors. It lets the Ada programmer use files, pipes, and sockets, as well as signals, error codes, environment variables, etc., using an interface that looks as much as possible like the C interface. Paradise supports multi-tasking: any input or output is blocking for the calling task only, and not for the entire process. Paradise is intended to be system-independant and compiler-independant; so far, it works on four environments: - SunOS 4.1 (Sparc) and SunAda (Verdix 6.1) compiler - SunOS 4.1 (Sparc) and TeleSoft 4.1.1 compiler - HP-UX (HP9000/700) and HP-Ada (Alsys) compiler - HP-UX (HP9000/700) and Verdix 6.3d compiler It is known not to work well on SunOS/Alsys, because of problems on signal handlers; For people who would like to port it to other environments, information on portability is displayed inside the code. A programmer's guide should appear in future versions. Send all comments, bug reports, patches to "paradise@cenatls.cena.dgac.fr" (Nicolas Courtel). [http://archive.adaic.com/tools/bindings/paradise/] Ada Binding to XModem and Kermit Network Protocols This is a set of Ada packages that implement the file transfer protocols only (for X_Modem and Kermit protocols). The documentation is complete and the implementation encourages reuse of this tool in a variety of ways.hpot [http://archive.adaic.com/tools/bindings/xmodem-kermit/] X-Windows - Motif These are the BCA/STARS Motif Ada bindings. Motif is an X-Windows based toolkit for user interface development. The BCA Motif Ada bindings are a binding to (not an implementation of): - the Motif widget (user interface object) set, and - a subset of the Motif functions You must have the Motif object code libraries to use this software. The bindings were developed using Motif version 1.0.1 and have not been tested under 1.1. [http://archive.adaic.com/tools/bindings/MOTIF/] X-Windows - X, Xlib, Xt, Motif This is a complete set of Ada Xlib/Xt/Motif bindings, and a set of examples. The Ada Xlib/Xt/Motif bindings require the existance of the C Xlib/Xt/Motif bindings. (Ie: the include files and the libraries are available). The actual bindings are pure Ada code, produced by tools written in Ada and C, with all the tools etc. in the tar file. The C tools are compiled using your system's Xlib, Xt, and Xm include files, and they use the information found there to produce Ada representation clauses, constants, etc. that exactly match the C representations of the structures, etc. This is how this kit can reliably generate bindings for a range of architectures, regardless of word-size, alignment-rules, etc. These bindings are for X11R4/Motif 1.1, X11R5/Motif 1.2 and DECMotif Extensions. These bindings are meant for DEC Ada 3.0 and later on OSF/1 and OpenVMS. They should work, or be easily modified to work, on many other Ada compilers and platforms. [http://archive.adaic.com/tools/bindings/Xlib-Xt-Xm-bindings/] X-Windows - Ada/X Toolkit This software package provides an Ada programmatic interface to a set of reusable user interface abstractions known as widgets. The software provides the full functionality of the M.I.T X Consortium Version 11 Release 4 X Window System. The software consists of three components: an Ada binding to the Xlib layer, an Ada implementation of the Xt Intrinsics layer, and an Ada widget library. The Ada binding to the Xlib layer upgrades the STARS Foundations Ada Xlib binding, and provides a protocol interface with a set of graphics drawing primitives. The Xt Intrinsics layer provides a policy-free mechanism for creating and managing user interface objects. User interface objects are contained in the widget library, which consists of a small set of commonly used user interface abstractions such as scroll bars and command buttons. This product was developed as part of the Software Technology for Adaptable, Reliable Systems (STARS) program, sponsored by the Advanced Research Projects Agency (ARPA). [http://archive.adaic.com/tools/bindings/X-toolkit/]
2.) Note that some names and types are not exactly identical to the CAPI definitions. Declarations like "HWND hwnd", anonymous arrays as structure members, pointers etc. had to be changed.
3.) Support for other OS/2 APIs than those related to the Presentation Manager has been dropped.
The bindings have been created using a customized CBIND6 and tested with GNAT 3.05 on OS/2 Warp v3. The CBIND utility can be obtained from ftp://rational.com/public/tools/cbind/, the GNAT Ada'95 compiler is at ftp://ftp.cs.nyu.edu/pub/gnat/. The base file was OS2EMX.H (part of gcc/emx), thus a copy of the GNU Library General Public License is included with the distribution archive. (A personal note: I still don't understand why all this hardcore legal stuff is necessary and why every piece of code has to include a lengthy all-capitals disclaimer message.) All kinds of feedback are appreciated.
[ftp://cs.nyu.edu/pub/gnat/contrib/os2/bindings/]
Package CGI "Package CGI" is an Ada 95 interface to the "Common Gateway Interface" (CGI). This package makes it easier to create Ada programs that can be invoked by World-Wide-Web (WWW) HTTP servers using the standard CGI interface. Using it, you can create Ada programs that perform queries or other processing by request from a WWW user. This package is copyright (C) 1995 David A. Wheeler (wheeler@ida.org). You are free to use it in anything you wish without restriction or payment, but please provide credit if you use this package. This Ada package provides two data access approaches from the CGI: 1.) As an associative array; simply provide the key name (as a string) and the value associated with that key will be returned. 2.) As a sequence of key-value pairs, indexed from 1 to Argument_Count. This access approach is similar to the Ada library Ada.Command_Line. The main access routines support both Ada 95 types String and Unbounded_String. [http://wuarchive.wustl.edu/languages/ada/swcomps/cgi/cgi.html] Paradox Dbms_Template represents a simple DBMS class. It is single user, but it can be extended for networks. It was created as a binding to Paradox Engine 1.0. It can serve as a binding to other DBMS's such as dBASE and Clipper by purchasing a C library for accessing other DBMS's and changing the body of Dbms_Template. This binding requires Paradox Engine and Microsoft's C library (large model). [http://archive.adaic.com/tools/bindings/paradox] Portable Common Tool Environment (PCTE) This is the Ada Portable Common Tool Environment (PCTE) binding (AdaPCTE). It provides Ada applications access to a PCTE object base as defined by the European Computer Manufacturers Association (ECMA) Ada PCTE specification (Standard ECMA-162 Ada Language Binding, December 1991). This "alpha" release provides a minimal set of interfaces to permit Ada developers to experiment with and evaluate PCTE for use in future Ada applications. It is expected that later releases will complete the binding. Since no conforming implementations of ECMA PCTE existed as defined in Standard ECMA-149, AdaPCTE ws implemented on GIE Emeraude's PCTE V12.2 Fix 7 or V12.3. Because only a subset of the ECMA PCTE Ada specification had been implemented for the 0.2 release, and because ECMA PCTE functionality differs somewhat from Emeraude PCTE functionality, the complete functionality of Emeraude PCTE is not available to Ada applications using these bindings. [http://archive.adaic.com/tools/bindings/PCTE] POSIX - Ada 83 The following statement is provided by the IEEE and governs the use of this code: These package specifications were extracted from IEEE Std 1003.5-1992, IEEE Standard for Information Technology - POSIX Ada Language Interfaces - Part 1: Binding System Application Program Interface, copyright (c) 1992 by the Institute of Electrical and Electronics Engineers, Inc. These package specifications represent only a portion of the document and are not to be interpreteted as the approved consensus standard. The IEEE Std 1003.5-1992 must be used in conjunction with these package specifications in order to claim conformance. The IEEE takes no responsibility for and will assume no liability for damages resulting from the reader's misinpretation of said information resulting from its out of context nature. To order copies of the IEEE Std 1003.5-1992, please contact the IEEE Service Center at 445 Hoes Lane, PO Box 1331, Piscataway, NJ 08855-1331; via phone at 1-800-678-IEEE, 908-981-1393; or via fax at 908-981-9667. Note that these specifications are incomplete, in that the standard identifies some declarations as implementation-defined. In addition, no package bodies are provided. This standard was developed by IEEE Working Group P1003.5. For more information on this group, contact the Chairman, James Lonjers, lonjers@vfl.paramax.com or 805/987-9457. Formal requests for interpretations of this standard should be addressed to the IEEE, as specified in the document. An e-mail list discussing ongoing POSIX/Ada binding work is available as "posix-ada@verdix.com". Send e-mail to "posixadarequest@verdix.com" to be included on the list. Current work in IEEE P1003.5 consists of the Ada Binding to POSIX Real-Time Extensions (IEEE Project P1003.20) and current interpretations of IEEE Std 1003.5-1992. [http://archive.adaic.com/tools/bindings/POSIX/ada83/] POSIX - Ada 95 These are POSIX .5 library specs. The library is under development, and this is a work-in-progress version release. A work-in-progress implementation of the package bodies should also be available shortly. (For more information via the World Wide Web, look into the PART Home page: "http://www.cs.fsu.edu/~doh/") For questions and suggestions, e-mail can be sent to part@ada.cs.fsu.edu. [http://archive.adaic.com/tools/bindings/POSIX/ada95/] POSIX Ada Run-Time System Libraries (PART) This is a pointer file to the POSIX Ada Run-Time System Libraries (PART), which contains code from one of the projects supported by the Ada Joint Program Office's FY91 Ada Technology Insertion Program (ATIP). PART is available to the public from Florida State University (FSU) for non-commercial use. See copyright note near end. PART can be obtained by anonymous FTP from FSU's ftp server (ftp.cs.fsu.edu). The release there is version 1.2 of the POSIX Ada Run-Time System Library (PART) using a CARTS interface [3]. It is implemented over the POSIX 1003.4a Threads Extension (Pthreads) [1], and requires access to an interface compliant with that standard. The purpose of this release of PART is to demonstrate the feasibility of implementing an Ada '83 run-time system over POSIX threads, and disclose the full details of one such implementation. By mapping Ada tasks onto POSIX threads, this approach should enhance the portability of Ada runtime systems and provide a platform for exploiting shared-memory multiprocessors. [ftp://ftp.cs.fsu.edu/pub/PART] SQL - A Prototype Binding of ANSI-Standard SQL to Ada Supporting the SAME Methodology This is the final release of the Computer Software Configuration Item (CSCI) identified as the IBM STARS Prototype Binding of Ansi-Standard SQL to Ada Supporting the SQL Ada Module Extensions (SAME) Methodology. This software was developed for the DoD's Software Technology for Adaptable, Reliable Systems (STARS) Program. The primary purpose of the Binding of ANSI-Standard SQL to Ada is to provide access to relational data bases that support SQL from within an Ada program. The secondary purpose of this project is to provide this access by implementing the SAME approach to data base interface as described in Guidelines for Use of the SAME, Technical Report CMU/SEI-89-TR-16. SAME is a specialization of the modular approach for implementing an interface between a programming language (in this case Ada) and a DBMS whose data manipulation language is SQL. SAME is an extension of the existing SQL module language standard meant to maximize Ada language capabilities. SAME provides an abstraction/mapping between an Ada program's objects and the weakly typed SQL concrete types through a layer that exists between the application program and the actual interface to the data base. To use SAME without any automated support would be a time consuming task. This project will provide such automated support. [http://archive.adaic.com/tools/bindings/SQL] SQL - SAMeDL Development Environment This is a release of the Intermetrics SAMeDL Development Environment. This software has been provided as part of a research and development effort under the Ada Technology Insertion Program (ATIP) in an effort to investigate and promote Ada/SQL interfacing technology, namely SAMeDL, within the Ada community. Although all attempts have been made to make this software as robust as possible, it is not of production quality. Deficiencies and problems are inherent and should not be used as a means for negatively judging the merits of SAMeDL. The challenges pertaining to the use of Ada and SQL in a well-engineered information system led to the formation of the SQL Ada Module Extension Design Committee (SAME-DC) at the Software Engineering Institute (SEI). The committee developed the SQL Ada Module Extension (SAME) Methodology to support and extend the modular approach to using Ada and SQL in database applications. The language which is used to implement SAME is the SQL Ada Module Description Language, or SAMeDL. Using the SAME methodology requires that SQL statements be separated from the Ada application code, and encapsulated in separate modules. The SQL statements are not embedded in the Ada packages, thus isolating the Ada application from the DBMS design and implementation. SAMeDL is designed to facilitate the construction of Ada database applications that use the SAME methodology. [http://archive.adaic.com/tools/bindings/SAMeDL/] TCP/IP - Secure File Transfer Program (SFTP) The Secure File Transfer Program provides a means of transferring sensitive information from one computer system to another. This system implements Transmission Control Protocol (TCP) and conforms to RFC:793. TCP provides a reliable communication between pairs of processes in logically distinct hosts on networks and sets of interconnected networks. The TCP resides in the transport layer of the DoD Internet Model. The system encapsulates messages received from the utility layer protocols, which reside directly above, and passes the packet to the Internet layer (communicates with the Internet Protocol (IP)). The TCP supports the following functions: connection-oriented, reliable data transfer, ordered data transfer delivery, full-duplex, and flow control. This product was developed as part of the Software Technology for Adaptable, Reliable Systems (STARS) program, sponsored by the Advanced Research Projects Agency (ARPA). [http://archive.adaic.com/tools/SFTP/] Transportable Applications Enviornment (TAE) The Transportable Applications Environment (TAE) Project is a state-of-the-art user interface development and management system, that provides services and tools for developing and managing graphically-oriented user interfaces, as well as providing common application executive services. The main component of TAE Plus is a WYSIWYG user interface designer's Workbench that allows an application developer to interactively construct a graphical user interface (GUI) by arranging and manipulating TAE Plus "interaction objects". These interaction objects include both user entry items (e.g., radio buttons, text keyin, icon buttons) and real-time dynamic data objects (e.g., dials, sliders, gauges, and discrete picture sequences). The Workbench also provides the capability to dynamically define "connections" between interaction objects, as well as to rehearse the designed GUI dialogue. The TAE Plus Workbench is a tool for building user interfaces. It is designed for both non-programmers and programmers. Knowledge of OSF/Motif or the X Window System is not necessary. New TAE Plus users quickly master the intuitive operation of the Workbench and can build working interfaces in a matter of hours - often without consulting manuals. As an aid to bridging the gap between the development and runtime environments, the Workbench provides the option of generating a skeleton source code program (in C, ANSI C, C++, and Ada) which fully displays and manages the designed GUI. This Workbench-generated code includes the calls to the TAE Plus runtime services and the Window Programming Tools (WPTs). The separation of the user interface from the application code allows changes to be made easily to an application's GUI without recompiling or relinking the software, and also hides the complexities of the underlying X and Motif windowing services from the application. [http://groucho.gsfc.nasa.gov/Code_520/Code_522/Projects/TAE/Bulletin/TAE_Bulletin3.htm] Unix - Paradise Paradise is a set of Ada packages intended to provide an interface to the Unix operating system, and more specifically to the communication routines, that are accessed via file descriptors. It lets the Ada programmer use files, pipes, and sockets, as well as signals, error codes, environment variables, etc., using an interface that looks as much as possible like the C interface. Paradise supports multi-tasking: any input or output is blocking for the calling task only, and not for the entire process. Paradise is intended to be system-independant and compiler-independant; so far, it works on four environments: - SunOS 4.1 (Sparc) and SunAda (Verdix 6.1) compiler - SunOS 4.1 (Sparc) and TeleSoft 4.1.1 compiler - HP-UX (HP9000/700) and HP-Ada (Alsys) compiler - HP-UX (HP9000/700) and Verdix 6.3d compiler It is known not to work well on SunOS/Alsys, because of problems on signal handlers; For people who would like to port it to other environments, information on portability is displayed inside the code. A programmer's guide should appear in future versions. Send all comments, bug reports, patches to "paradise@cenatls.cena.dgac.fr" (Nicolas Courtel). [http://archive.adaic.com/tools/bindings/paradise/] Ada Binding to XModem and Kermit Network Protocols This is a set of Ada packages that implement the file transfer protocols only (for X_Modem and Kermit protocols). The documentation is complete and the implementation encourages reuse of this tool in a variety of ways.hpot [http://archive.adaic.com/tools/bindings/xmodem-kermit/] X-Windows - Motif These are the BCA/STARS Motif Ada bindings. Motif is an X-Windows based toolkit for user interface development. The BCA Motif Ada bindings are a binding to (not an implementation of): - the Motif widget (user interface object) set, and - a subset of the Motif functions You must have the Motif object code libraries to use this software. The bindings were developed using Motif version 1.0.1 and have not been tested under 1.1. [http://archive.adaic.com/tools/bindings/MOTIF/] X-Windows - X, Xlib, Xt, Motif This is a complete set of Ada Xlib/Xt/Motif bindings, and a set of examples. The Ada Xlib/Xt/Motif bindings require the existance of the C Xlib/Xt/Motif bindings. (Ie: the include files and the libraries are available). The actual bindings are pure Ada code, produced by tools written in Ada and C, with all the tools etc. in the tar file. The C tools are compiled using your system's Xlib, Xt, and Xm include files, and they use the information found there to produce Ada representation clauses, constants, etc. that exactly match the C representations of the structures, etc. This is how this kit can reliably generate bindings for a range of architectures, regardless of word-size, alignment-rules, etc. These bindings are for X11R4/Motif 1.1, X11R5/Motif 1.2 and DECMotif Extensions. These bindings are meant for DEC Ada 3.0 and later on OSF/1 and OpenVMS. They should work, or be easily modified to work, on many other Ada compilers and platforms. [http://archive.adaic.com/tools/bindings/Xlib-Xt-Xm-bindings/] X-Windows - Ada/X Toolkit This software package provides an Ada programmatic interface to a set of reusable user interface abstractions known as widgets. The software provides the full functionality of the M.I.T X Consortium Version 11 Release 4 X Window System. The software consists of three components: an Ada binding to the Xlib layer, an Ada implementation of the Xt Intrinsics layer, and an Ada widget library. The Ada binding to the Xlib layer upgrades the STARS Foundations Ada Xlib binding, and provides a protocol interface with a set of graphics drawing primitives. The Xt Intrinsics layer provides a policy-free mechanism for creating and managing user interface objects. User interface objects are contained in the widget library, which consists of a small set of commonly used user interface abstractions such as scroll bars and command buttons. This product was developed as part of the Software Technology for Adaptable, Reliable Systems (STARS) program, sponsored by the Advanced Research Projects Agency (ARPA). [http://archive.adaic.com/tools/bindings/X-toolkit/]
This package is copyright (C) 1995 David A. Wheeler (wheeler@ida.org). You are free to use it in anything you wish without restriction or payment, but please provide credit if you use this package.
This Ada package provides two data access approaches from the CGI:
The main access routines support both Ada 95 types String and Unbounded_String.
[http://wuarchive.wustl.edu/languages/ada/swcomps/cgi/cgi.html]
Paradox Dbms_Template represents a simple DBMS class. It is single user, but it can be extended for networks. It was created as a binding to Paradox Engine 1.0. It can serve as a binding to other DBMS's such as dBASE and Clipper by purchasing a C library for accessing other DBMS's and changing the body of Dbms_Template. This binding requires Paradox Engine and Microsoft's C library (large model). [http://archive.adaic.com/tools/bindings/paradox] Portable Common Tool Environment (PCTE) This is the Ada Portable Common Tool Environment (PCTE) binding (AdaPCTE). It provides Ada applications access to a PCTE object base as defined by the European Computer Manufacturers Association (ECMA) Ada PCTE specification (Standard ECMA-162 Ada Language Binding, December 1991). This "alpha" release provides a minimal set of interfaces to permit Ada developers to experiment with and evaluate PCTE for use in future Ada applications. It is expected that later releases will complete the binding. Since no conforming implementations of ECMA PCTE existed as defined in Standard ECMA-149, AdaPCTE ws implemented on GIE Emeraude's PCTE V12.2 Fix 7 or V12.3. Because only a subset of the ECMA PCTE Ada specification had been implemented for the 0.2 release, and because ECMA PCTE functionality differs somewhat from Emeraude PCTE functionality, the complete functionality of Emeraude PCTE is not available to Ada applications using these bindings. [http://archive.adaic.com/tools/bindings/PCTE] POSIX - Ada 83 The following statement is provided by the IEEE and governs the use of this code: These package specifications were extracted from IEEE Std 1003.5-1992, IEEE Standard for Information Technology - POSIX Ada Language Interfaces - Part 1: Binding System Application Program Interface, copyright (c) 1992 by the Institute of Electrical and Electronics Engineers, Inc. These package specifications represent only a portion of the document and are not to be interpreteted as the approved consensus standard. The IEEE Std 1003.5-1992 must be used in conjunction with these package specifications in order to claim conformance. The IEEE takes no responsibility for and will assume no liability for damages resulting from the reader's misinpretation of said information resulting from its out of context nature. To order copies of the IEEE Std 1003.5-1992, please contact the IEEE Service Center at 445 Hoes Lane, PO Box 1331, Piscataway, NJ 08855-1331; via phone at 1-800-678-IEEE, 908-981-1393; or via fax at 908-981-9667. Note that these specifications are incomplete, in that the standard identifies some declarations as implementation-defined. In addition, no package bodies are provided. This standard was developed by IEEE Working Group P1003.5. For more information on this group, contact the Chairman, James Lonjers, lonjers@vfl.paramax.com or 805/987-9457. Formal requests for interpretations of this standard should be addressed to the IEEE, as specified in the document. An e-mail list discussing ongoing POSIX/Ada binding work is available as "posix-ada@verdix.com". Send e-mail to "posixadarequest@verdix.com" to be included on the list. Current work in IEEE P1003.5 consists of the Ada Binding to POSIX Real-Time Extensions (IEEE Project P1003.20) and current interpretations of IEEE Std 1003.5-1992. [http://archive.adaic.com/tools/bindings/POSIX/ada83/] POSIX - Ada 95 These are POSIX .5 library specs. The library is under development, and this is a work-in-progress version release. A work-in-progress implementation of the package bodies should also be available shortly. (For more information via the World Wide Web, look into the PART Home page: "http://www.cs.fsu.edu/~doh/") For questions and suggestions, e-mail can be sent to part@ada.cs.fsu.edu. [http://archive.adaic.com/tools/bindings/POSIX/ada95/] POSIX Ada Run-Time System Libraries (PART) This is a pointer file to the POSIX Ada Run-Time System Libraries (PART), which contains code from one of the projects supported by the Ada Joint Program Office's FY91 Ada Technology Insertion Program (ATIP). PART is available to the public from Florida State University (FSU) for non-commercial use. See copyright note near end. PART can be obtained by anonymous FTP from FSU's ftp server (ftp.cs.fsu.edu). The release there is version 1.2 of the POSIX Ada Run-Time System Library (PART) using a CARTS interface [3]. It is implemented over the POSIX 1003.4a Threads Extension (Pthreads) [1], and requires access to an interface compliant with that standard. The purpose of this release of PART is to demonstrate the feasibility of implementing an Ada '83 run-time system over POSIX threads, and disclose the full details of one such implementation. By mapping Ada tasks onto POSIX threads, this approach should enhance the portability of Ada runtime systems and provide a platform for exploiting shared-memory multiprocessors. [ftp://ftp.cs.fsu.edu/pub/PART] SQL - A Prototype Binding of ANSI-Standard SQL to Ada Supporting the SAME Methodology This is the final release of the Computer Software Configuration Item (CSCI) identified as the IBM STARS Prototype Binding of Ansi-Standard SQL to Ada Supporting the SQL Ada Module Extensions (SAME) Methodology. This software was developed for the DoD's Software Technology for Adaptable, Reliable Systems (STARS) Program. The primary purpose of the Binding of ANSI-Standard SQL to Ada is to provide access to relational data bases that support SQL from within an Ada program. The secondary purpose of this project is to provide this access by implementing the SAME approach to data base interface as described in Guidelines for Use of the SAME, Technical Report CMU/SEI-89-TR-16. SAME is a specialization of the modular approach for implementing an interface between a programming language (in this case Ada) and a DBMS whose data manipulation language is SQL. SAME is an extension of the existing SQL module language standard meant to maximize Ada language capabilities. SAME provides an abstraction/mapping between an Ada program's objects and the weakly typed SQL concrete types through a layer that exists between the application program and the actual interface to the data base. To use SAME without any automated support would be a time consuming task. This project will provide such automated support. [http://archive.adaic.com/tools/bindings/SQL] SQL - SAMeDL Development Environment This is a release of the Intermetrics SAMeDL Development Environment. This software has been provided as part of a research and development effort under the Ada Technology Insertion Program (ATIP) in an effort to investigate and promote Ada/SQL interfacing technology, namely SAMeDL, within the Ada community. Although all attempts have been made to make this software as robust as possible, it is not of production quality. Deficiencies and problems are inherent and should not be used as a means for negatively judging the merits of SAMeDL. The challenges pertaining to the use of Ada and SQL in a well-engineered information system led to the formation of the SQL Ada Module Extension Design Committee (SAME-DC) at the Software Engineering Institute (SEI). The committee developed the SQL Ada Module Extension (SAME) Methodology to support and extend the modular approach to using Ada and SQL in database applications. The language which is used to implement SAME is the SQL Ada Module Description Language, or SAMeDL. Using the SAME methodology requires that SQL statements be separated from the Ada application code, and encapsulated in separate modules. The SQL statements are not embedded in the Ada packages, thus isolating the Ada application from the DBMS design and implementation. SAMeDL is designed to facilitate the construction of Ada database applications that use the SAME methodology. [http://archive.adaic.com/tools/bindings/SAMeDL/] TCP/IP - Secure File Transfer Program (SFTP) The Secure File Transfer Program provides a means of transferring sensitive information from one computer system to another. This system implements Transmission Control Protocol (TCP) and conforms to RFC:793. TCP provides a reliable communication between pairs of processes in logically distinct hosts on networks and sets of interconnected networks. The TCP resides in the transport layer of the DoD Internet Model. The system encapsulates messages received from the utility layer protocols, which reside directly above, and passes the packet to the Internet layer (communicates with the Internet Protocol (IP)). The TCP supports the following functions: connection-oriented, reliable data transfer, ordered data transfer delivery, full-duplex, and flow control. This product was developed as part of the Software Technology for Adaptable, Reliable Systems (STARS) program, sponsored by the Advanced Research Projects Agency (ARPA). [http://archive.adaic.com/tools/SFTP/] Transportable Applications Enviornment (TAE) The Transportable Applications Environment (TAE) Project is a state-of-the-art user interface development and management system, that provides services and tools for developing and managing graphically-oriented user interfaces, as well as providing common application executive services. The main component of TAE Plus is a WYSIWYG user interface designer's Workbench that allows an application developer to interactively construct a graphical user interface (GUI) by arranging and manipulating TAE Plus "interaction objects". These interaction objects include both user entry items (e.g., radio buttons, text keyin, icon buttons) and real-time dynamic data objects (e.g., dials, sliders, gauges, and discrete picture sequences). The Workbench also provides the capability to dynamically define "connections" between interaction objects, as well as to rehearse the designed GUI dialogue. The TAE Plus Workbench is a tool for building user interfaces. It is designed for both non-programmers and programmers. Knowledge of OSF/Motif or the X Window System is not necessary. New TAE Plus users quickly master the intuitive operation of the Workbench and can build working interfaces in a matter of hours - often without consulting manuals. As an aid to bridging the gap between the development and runtime environments, the Workbench provides the option of generating a skeleton source code program (in C, ANSI C, C++, and Ada) which fully displays and manages the designed GUI. This Workbench-generated code includes the calls to the TAE Plus runtime services and the Window Programming Tools (WPTs). The separation of the user interface from the application code allows changes to be made easily to an application's GUI without recompiling or relinking the software, and also hides the complexities of the underlying X and Motif windowing services from the application. [http://groucho.gsfc.nasa.gov/Code_520/Code_522/Projects/TAE/Bulletin/TAE_Bulletin3.htm] Unix - Paradise Paradise is a set of Ada packages intended to provide an interface to the Unix operating system, and more specifically to the communication routines, that are accessed via file descriptors. It lets the Ada programmer use files, pipes, and sockets, as well as signals, error codes, environment variables, etc., using an interface that looks as much as possible like the C interface. Paradise supports multi-tasking: any input or output is blocking for the calling task only, and not for the entire process. Paradise is intended to be system-independant and compiler-independant; so far, it works on four environments: - SunOS 4.1 (Sparc) and SunAda (Verdix 6.1) compiler - SunOS 4.1 (Sparc) and TeleSoft 4.1.1 compiler - HP-UX (HP9000/700) and HP-Ada (Alsys) compiler - HP-UX (HP9000/700) and Verdix 6.3d compiler It is known not to work well on SunOS/Alsys, because of problems on signal handlers; For people who would like to port it to other environments, information on portability is displayed inside the code. A programmer's guide should appear in future versions. Send all comments, bug reports, patches to "paradise@cenatls.cena.dgac.fr" (Nicolas Courtel). [http://archive.adaic.com/tools/bindings/paradise/] Ada Binding to XModem and Kermit Network Protocols This is a set of Ada packages that implement the file transfer protocols only (for X_Modem and Kermit protocols). The documentation is complete and the implementation encourages reuse of this tool in a variety of ways.hpot [http://archive.adaic.com/tools/bindings/xmodem-kermit/] X-Windows - Motif These are the BCA/STARS Motif Ada bindings. Motif is an X-Windows based toolkit for user interface development. The BCA Motif Ada bindings are a binding to (not an implementation of): - the Motif widget (user interface object) set, and - a subset of the Motif functions You must have the Motif object code libraries to use this software. The bindings were developed using Motif version 1.0.1 and have not been tested under 1.1. [http://archive.adaic.com/tools/bindings/MOTIF/] X-Windows - X, Xlib, Xt, Motif This is a complete set of Ada Xlib/Xt/Motif bindings, and a set of examples. The Ada Xlib/Xt/Motif bindings require the existance of the C Xlib/Xt/Motif bindings. (Ie: the include files and the libraries are available). The actual bindings are pure Ada code, produced by tools written in Ada and C, with all the tools etc. in the tar file. The C tools are compiled using your system's Xlib, Xt, and Xm include files, and they use the information found there to produce Ada representation clauses, constants, etc. that exactly match the C representations of the structures, etc. This is how this kit can reliably generate bindings for a range of architectures, regardless of word-size, alignment-rules, etc. These bindings are for X11R4/Motif 1.1, X11R5/Motif 1.2 and DECMotif Extensions. These bindings are meant for DEC Ada 3.0 and later on OSF/1 and OpenVMS. They should work, or be easily modified to work, on many other Ada compilers and platforms. [http://archive.adaic.com/tools/bindings/Xlib-Xt-Xm-bindings/] X-Windows - Ada/X Toolkit This software package provides an Ada programmatic interface to a set of reusable user interface abstractions known as widgets. The software provides the full functionality of the M.I.T X Consortium Version 11 Release 4 X Window System. The software consists of three components: an Ada binding to the Xlib layer, an Ada implementation of the Xt Intrinsics layer, and an Ada widget library. The Ada binding to the Xlib layer upgrades the STARS Foundations Ada Xlib binding, and provides a protocol interface with a set of graphics drawing primitives. The Xt Intrinsics layer provides a policy-free mechanism for creating and managing user interface objects. User interface objects are contained in the widget library, which consists of a small set of commonly used user interface abstractions such as scroll bars and command buttons. This product was developed as part of the Software Technology for Adaptable, Reliable Systems (STARS) program, sponsored by the Advanced Research Projects Agency (ARPA). [http://archive.adaic.com/tools/bindings/X-toolkit/]
This binding requires Paradox Engine and Microsoft's C library (large model).
[http://archive.adaic.com/tools/bindings/paradox]
Portable Common Tool Environment (PCTE) This is the Ada Portable Common Tool Environment (PCTE) binding (AdaPCTE). It provides Ada applications access to a PCTE object base as defined by the European Computer Manufacturers Association (ECMA) Ada PCTE specification (Standard ECMA-162 Ada Language Binding, December 1991). This "alpha" release provides a minimal set of interfaces to permit Ada developers to experiment with and evaluate PCTE for use in future Ada applications. It is expected that later releases will complete the binding. Since no conforming implementations of ECMA PCTE existed as defined in Standard ECMA-149, AdaPCTE ws implemented on GIE Emeraude's PCTE V12.2 Fix 7 or V12.3. Because only a subset of the ECMA PCTE Ada specification had been implemented for the 0.2 release, and because ECMA PCTE functionality differs somewhat from Emeraude PCTE functionality, the complete functionality of Emeraude PCTE is not available to Ada applications using these bindings. [http://archive.adaic.com/tools/bindings/PCTE] POSIX - Ada 83 The following statement is provided by the IEEE and governs the use of this code: These package specifications were extracted from IEEE Std 1003.5-1992, IEEE Standard for Information Technology - POSIX Ada Language Interfaces - Part 1: Binding System Application Program Interface, copyright (c) 1992 by the Institute of Electrical and Electronics Engineers, Inc. These package specifications represent only a portion of the document and are not to be interpreteted as the approved consensus standard. The IEEE Std 1003.5-1992 must be used in conjunction with these package specifications in order to claim conformance. The IEEE takes no responsibility for and will assume no liability for damages resulting from the reader's misinpretation of said information resulting from its out of context nature. To order copies of the IEEE Std 1003.5-1992, please contact the IEEE Service Center at 445 Hoes Lane, PO Box 1331, Piscataway, NJ 08855-1331; via phone at 1-800-678-IEEE, 908-981-1393; or via fax at 908-981-9667. Note that these specifications are incomplete, in that the standard identifies some declarations as implementation-defined. In addition, no package bodies are provided. This standard was developed by IEEE Working Group P1003.5. For more information on this group, contact the Chairman, James Lonjers, lonjers@vfl.paramax.com or 805/987-9457. Formal requests for interpretations of this standard should be addressed to the IEEE, as specified in the document. An e-mail list discussing ongoing POSIX/Ada binding work is available as "posix-ada@verdix.com". Send e-mail to "posixadarequest@verdix.com" to be included on the list. Current work in IEEE P1003.5 consists of the Ada Binding to POSIX Real-Time Extensions (IEEE Project P1003.20) and current interpretations of IEEE Std 1003.5-1992. [http://archive.adaic.com/tools/bindings/POSIX/ada83/] POSIX - Ada 95 These are POSIX .5 library specs. The library is under development, and this is a work-in-progress version release. A work-in-progress implementation of the package bodies should also be available shortly. (For more information via the World Wide Web, look into the PART Home page: "http://www.cs.fsu.edu/~doh/") For questions and suggestions, e-mail can be sent to part@ada.cs.fsu.edu. [http://archive.adaic.com/tools/bindings/POSIX/ada95/] POSIX Ada Run-Time System Libraries (PART) This is a pointer file to the POSIX Ada Run-Time System Libraries (PART), which contains code from one of the projects supported by the Ada Joint Program Office's FY91 Ada Technology Insertion Program (ATIP). PART is available to the public from Florida State University (FSU) for non-commercial use. See copyright note near end. PART can be obtained by anonymous FTP from FSU's ftp server (ftp.cs.fsu.edu). The release there is version 1.2 of the POSIX Ada Run-Time System Library (PART) using a CARTS interface [3]. It is implemented over the POSIX 1003.4a Threads Extension (Pthreads) [1], and requires access to an interface compliant with that standard. The purpose of this release of PART is to demonstrate the feasibility of implementing an Ada '83 run-time system over POSIX threads, and disclose the full details of one such implementation. By mapping Ada tasks onto POSIX threads, this approach should enhance the portability of Ada runtime systems and provide a platform for exploiting shared-memory multiprocessors. [ftp://ftp.cs.fsu.edu/pub/PART] SQL - A Prototype Binding of ANSI-Standard SQL to Ada Supporting the SAME Methodology This is the final release of the Computer Software Configuration Item (CSCI) identified as the IBM STARS Prototype Binding of Ansi-Standard SQL to Ada Supporting the SQL Ada Module Extensions (SAME) Methodology. This software was developed for the DoD's Software Technology for Adaptable, Reliable Systems (STARS) Program. The primary purpose of the Binding of ANSI-Standard SQL to Ada is to provide access to relational data bases that support SQL from within an Ada program. The secondary purpose of this project is to provide this access by implementing the SAME approach to data base interface as described in Guidelines for Use of the SAME, Technical Report CMU/SEI-89-TR-16. SAME is a specialization of the modular approach for implementing an interface between a programming language (in this case Ada) and a DBMS whose data manipulation language is SQL. SAME is an extension of the existing SQL module language standard meant to maximize Ada language capabilities. SAME provides an abstraction/mapping between an Ada program's objects and the weakly typed SQL concrete types through a layer that exists between the application program and the actual interface to the data base. To use SAME without any automated support would be a time consuming task. This project will provide such automated support. [http://archive.adaic.com/tools/bindings/SQL] SQL - SAMeDL Development Environment This is a release of the Intermetrics SAMeDL Development Environment. This software has been provided as part of a research and development effort under the Ada Technology Insertion Program (ATIP) in an effort to investigate and promote Ada/SQL interfacing technology, namely SAMeDL, within the Ada community. Although all attempts have been made to make this software as robust as possible, it is not of production quality. Deficiencies and problems are inherent and should not be used as a means for negatively judging the merits of SAMeDL. The challenges pertaining to the use of Ada and SQL in a well-engineered information system led to the formation of the SQL Ada Module Extension Design Committee (SAME-DC) at the Software Engineering Institute (SEI). The committee developed the SQL Ada Module Extension (SAME) Methodology to support and extend the modular approach to using Ada and SQL in database applications. The language which is used to implement SAME is the SQL Ada Module Description Language, or SAMeDL. Using the SAME methodology requires that SQL statements be separated from the Ada application code, and encapsulated in separate modules. The SQL statements are not embedded in the Ada packages, thus isolating the Ada application from the DBMS design and implementation. SAMeDL is designed to facilitate the construction of Ada database applications that use the SAME methodology. [http://archive.adaic.com/tools/bindings/SAMeDL/] TCP/IP - Secure File Transfer Program (SFTP) The Secure File Transfer Program provides a means of transferring sensitive information from one computer system to another. This system implements Transmission Control Protocol (TCP) and conforms to RFC:793. TCP provides a reliable communication between pairs of processes in logically distinct hosts on networks and sets of interconnected networks. The TCP resides in the transport layer of the DoD Internet Model. The system encapsulates messages received from the utility layer protocols, which reside directly above, and passes the packet to the Internet layer (communicates with the Internet Protocol (IP)). The TCP supports the following functions: connection-oriented, reliable data transfer, ordered data transfer delivery, full-duplex, and flow control. This product was developed as part of the Software Technology for Adaptable, Reliable Systems (STARS) program, sponsored by the Advanced Research Projects Agency (ARPA). [http://archive.adaic.com/tools/SFTP/] Transportable Applications Enviornment (TAE) The Transportable Applications Environment (TAE) Project is a state-of-the-art user interface development and management system, that provides services and tools for developing and managing graphically-oriented user interfaces, as well as providing common application executive services. The main component of TAE Plus is a WYSIWYG user interface designer's Workbench that allows an application developer to interactively construct a graphical user interface (GUI) by arranging and manipulating TAE Plus "interaction objects". These interaction objects include both user entry items (e.g., radio buttons, text keyin, icon buttons) and real-time dynamic data objects (e.g., dials, sliders, gauges, and discrete picture sequences). The Workbench also provides the capability to dynamically define "connections" between interaction objects, as well as to rehearse the designed GUI dialogue. The TAE Plus Workbench is a tool for building user interfaces. It is designed for both non-programmers and programmers. Knowledge of OSF/Motif or the X Window System is not necessary. New TAE Plus users quickly master the intuitive operation of the Workbench and can build working interfaces in a matter of hours - often without consulting manuals. As an aid to bridging the gap between the development and runtime environments, the Workbench provides the option of generating a skeleton source code program (in C, ANSI C, C++, and Ada) which fully displays and manages the designed GUI. This Workbench-generated code includes the calls to the TAE Plus runtime services and the Window Programming Tools (WPTs). The separation of the user interface from the application code allows changes to be made easily to an application's GUI without recompiling or relinking the software, and also hides the complexities of the underlying X and Motif windowing services from the application. [http://groucho.gsfc.nasa.gov/Code_520/Code_522/Projects/TAE/Bulletin/TAE_Bulletin3.htm] Unix - Paradise Paradise is a set of Ada packages intended to provide an interface to the Unix operating system, and more specifically to the communication routines, that are accessed via file descriptors. It lets the Ada programmer use files, pipes, and sockets, as well as signals, error codes, environment variables, etc., using an interface that looks as much as possible like the C interface. Paradise supports multi-tasking: any input or output is blocking for the calling task only, and not for the entire process. Paradise is intended to be system-independant and compiler-independant; so far, it works on four environments: - SunOS 4.1 (Sparc) and SunAda (Verdix 6.1) compiler - SunOS 4.1 (Sparc) and TeleSoft 4.1.1 compiler - HP-UX (HP9000/700) and HP-Ada (Alsys) compiler - HP-UX (HP9000/700) and Verdix 6.3d compiler It is known not to work well on SunOS/Alsys, because of problems on signal handlers; For people who would like to port it to other environments, information on portability is displayed inside the code. A programmer's guide should appear in future versions. Send all comments, bug reports, patches to "paradise@cenatls.cena.dgac.fr" (Nicolas Courtel). [http://archive.adaic.com/tools/bindings/paradise/] Ada Binding to XModem and Kermit Network Protocols This is a set of Ada packages that implement the file transfer protocols only (for X_Modem and Kermit protocols). The documentation is complete and the implementation encourages reuse of this tool in a variety of ways.hpot [http://archive.adaic.com/tools/bindings/xmodem-kermit/] X-Windows - Motif These are the BCA/STARS Motif Ada bindings. Motif is an X-Windows based toolkit for user interface development. The BCA Motif Ada bindings are a binding to (not an implementation of): - the Motif widget (user interface object) set, and - a subset of the Motif functions You must have the Motif object code libraries to use this software. The bindings were developed using Motif version 1.0.1 and have not been tested under 1.1. [http://archive.adaic.com/tools/bindings/MOTIF/] X-Windows - X, Xlib, Xt, Motif This is a complete set of Ada Xlib/Xt/Motif bindings, and a set of examples. The Ada Xlib/Xt/Motif bindings require the existance of the C Xlib/Xt/Motif bindings. (Ie: the include files and the libraries are available). The actual bindings are pure Ada code, produced by tools written in Ada and C, with all the tools etc. in the tar file. The C tools are compiled using your system's Xlib, Xt, and Xm include files, and they use the information found there to produce Ada representation clauses, constants, etc. that exactly match the C representations of the structures, etc. This is how this kit can reliably generate bindings for a range of architectures, regardless of word-size, alignment-rules, etc. These bindings are for X11R4/Motif 1.1, X11R5/Motif 1.2 and DECMotif Extensions. These bindings are meant for DEC Ada 3.0 and later on OSF/1 and OpenVMS. They should work, or be easily modified to work, on many other Ada compilers and platforms. [http://archive.adaic.com/tools/bindings/Xlib-Xt-Xm-bindings/] X-Windows - Ada/X Toolkit This software package provides an Ada programmatic interface to a set of reusable user interface abstractions known as widgets. The software provides the full functionality of the M.I.T X Consortium Version 11 Release 4 X Window System. The software consists of three components: an Ada binding to the Xlib layer, an Ada implementation of the Xt Intrinsics layer, and an Ada widget library. The Ada binding to the Xlib layer upgrades the STARS Foundations Ada Xlib binding, and provides a protocol interface with a set of graphics drawing primitives. The Xt Intrinsics layer provides a policy-free mechanism for creating and managing user interface objects. User interface objects are contained in the widget library, which consists of a small set of commonly used user interface abstractions such as scroll bars and command buttons. This product was developed as part of the Software Technology for Adaptable, Reliable Systems (STARS) program, sponsored by the Advanced Research Projects Agency (ARPA). [http://archive.adaic.com/tools/bindings/X-toolkit/]
Since no conforming implementations of ECMA PCTE existed as defined in Standard ECMA-149, AdaPCTE ws implemented on GIE Emeraude's PCTE V12.2 Fix 7 or V12.3. Because only a subset of the ECMA PCTE Ada specification had been implemented for the 0.2 release, and because ECMA PCTE functionality differs somewhat from Emeraude PCTE functionality, the complete functionality of Emeraude PCTE is not available to Ada applications using these bindings.
[http://archive.adaic.com/tools/bindings/PCTE]
POSIX - Ada 83 The following statement is provided by the IEEE and governs the use of this code: These package specifications were extracted from IEEE Std 1003.5-1992, IEEE Standard for Information Technology - POSIX Ada Language Interfaces - Part 1: Binding System Application Program Interface, copyright (c) 1992 by the Institute of Electrical and Electronics Engineers, Inc. These package specifications represent only a portion of the document and are not to be interpreteted as the approved consensus standard. The IEEE Std 1003.5-1992 must be used in conjunction with these package specifications in order to claim conformance. The IEEE takes no responsibility for and will assume no liability for damages resulting from the reader's misinpretation of said information resulting from its out of context nature. To order copies of the IEEE Std 1003.5-1992, please contact the IEEE Service Center at 445 Hoes Lane, PO Box 1331, Piscataway, NJ 08855-1331; via phone at 1-800-678-IEEE, 908-981-1393; or via fax at 908-981-9667. Note that these specifications are incomplete, in that the standard identifies some declarations as implementation-defined. In addition, no package bodies are provided. This standard was developed by IEEE Working Group P1003.5. For more information on this group, contact the Chairman, James Lonjers, lonjers@vfl.paramax.com or 805/987-9457. Formal requests for interpretations of this standard should be addressed to the IEEE, as specified in the document. An e-mail list discussing ongoing POSIX/Ada binding work is available as "posix-ada@verdix.com". Send e-mail to "posixadarequest@verdix.com" to be included on the list. Current work in IEEE P1003.5 consists of the Ada Binding to POSIX Real-Time Extensions (IEEE Project P1003.20) and current interpretations of IEEE Std 1003.5-1992. [http://archive.adaic.com/tools/bindings/POSIX/ada83/] POSIX - Ada 95 These are POSIX .5 library specs. The library is under development, and this is a work-in-progress version release. A work-in-progress implementation of the package bodies should also be available shortly. (For more information via the World Wide Web, look into the PART Home page: "http://www.cs.fsu.edu/~doh/") For questions and suggestions, e-mail can be sent to part@ada.cs.fsu.edu. [http://archive.adaic.com/tools/bindings/POSIX/ada95/] POSIX Ada Run-Time System Libraries (PART) This is a pointer file to the POSIX Ada Run-Time System Libraries (PART), which contains code from one of the projects supported by the Ada Joint Program Office's FY91 Ada Technology Insertion Program (ATIP). PART is available to the public from Florida State University (FSU) for non-commercial use. See copyright note near end. PART can be obtained by anonymous FTP from FSU's ftp server (ftp.cs.fsu.edu). The release there is version 1.2 of the POSIX Ada Run-Time System Library (PART) using a CARTS interface [3]. It is implemented over the POSIX 1003.4a Threads Extension (Pthreads) [1], and requires access to an interface compliant with that standard. The purpose of this release of PART is to demonstrate the feasibility of implementing an Ada '83 run-time system over POSIX threads, and disclose the full details of one such implementation. By mapping Ada tasks onto POSIX threads, this approach should enhance the portability of Ada runtime systems and provide a platform for exploiting shared-memory multiprocessors. [ftp://ftp.cs.fsu.edu/pub/PART] SQL - A Prototype Binding of ANSI-Standard SQL to Ada Supporting the SAME Methodology This is the final release of the Computer Software Configuration Item (CSCI) identified as the IBM STARS Prototype Binding of Ansi-Standard SQL to Ada Supporting the SQL Ada Module Extensions (SAME) Methodology. This software was developed for the DoD's Software Technology for Adaptable, Reliable Systems (STARS) Program. The primary purpose of the Binding of ANSI-Standard SQL to Ada is to provide access to relational data bases that support SQL from within an Ada program. The secondary purpose of this project is to provide this access by implementing the SAME approach to data base interface as described in Guidelines for Use of the SAME, Technical Report CMU/SEI-89-TR-16. SAME is a specialization of the modular approach for implementing an interface between a programming language (in this case Ada) and a DBMS whose data manipulation language is SQL. SAME is an extension of the existing SQL module language standard meant to maximize Ada language capabilities. SAME provides an abstraction/mapping between an Ada program's objects and the weakly typed SQL concrete types through a layer that exists between the application program and the actual interface to the data base. To use SAME without any automated support would be a time consuming task. This project will provide such automated support. [http://archive.adaic.com/tools/bindings/SQL] SQL - SAMeDL Development Environment This is a release of the Intermetrics SAMeDL Development Environment. This software has been provided as part of a research and development effort under the Ada Technology Insertion Program (ATIP) in an effort to investigate and promote Ada/SQL interfacing technology, namely SAMeDL, within the Ada community. Although all attempts have been made to make this software as robust as possible, it is not of production quality. Deficiencies and problems are inherent and should not be used as a means for negatively judging the merits of SAMeDL. The challenges pertaining to the use of Ada and SQL in a well-engineered information system led to the formation of the SQL Ada Module Extension Design Committee (SAME-DC) at the Software Engineering Institute (SEI). The committee developed the SQL Ada Module Extension (SAME) Methodology to support and extend the modular approach to using Ada and SQL in database applications. The language which is used to implement SAME is the SQL Ada Module Description Language, or SAMeDL. Using the SAME methodology requires that SQL statements be separated from the Ada application code, and encapsulated in separate modules. The SQL statements are not embedded in the Ada packages, thus isolating the Ada application from the DBMS design and implementation. SAMeDL is designed to facilitate the construction of Ada database applications that use the SAME methodology. [http://archive.adaic.com/tools/bindings/SAMeDL/] TCP/IP - Secure File Transfer Program (SFTP) The Secure File Transfer Program provides a means of transferring sensitive information from one computer system to another. This system implements Transmission Control Protocol (TCP) and conforms to RFC:793. TCP provides a reliable communication between pairs of processes in logically distinct hosts on networks and sets of interconnected networks. The TCP resides in the transport layer of the DoD Internet Model. The system encapsulates messages received from the utility layer protocols, which reside directly above, and passes the packet to the Internet layer (communicates with the Internet Protocol (IP)). The TCP supports the following functions: connection-oriented, reliable data transfer, ordered data transfer delivery, full-duplex, and flow control. This product was developed as part of the Software Technology for Adaptable, Reliable Systems (STARS) program, sponsored by the Advanced Research Projects Agency (ARPA). [http://archive.adaic.com/tools/SFTP/] Transportable Applications Enviornment (TAE) The Transportable Applications Environment (TAE) Project is a state-of-the-art user interface development and management system, that provides services and tools for developing and managing graphically-oriented user interfaces, as well as providing common application executive services. The main component of TAE Plus is a WYSIWYG user interface designer's Workbench that allows an application developer to interactively construct a graphical user interface (GUI) by arranging and manipulating TAE Plus "interaction objects". These interaction objects include both user entry items (e.g., radio buttons, text keyin, icon buttons) and real-time dynamic data objects (e.g., dials, sliders, gauges, and discrete picture sequences). The Workbench also provides the capability to dynamically define "connections" between interaction objects, as well as to rehearse the designed GUI dialogue. The TAE Plus Workbench is a tool for building user interfaces. It is designed for both non-programmers and programmers. Knowledge of OSF/Motif or the X Window System is not necessary. New TAE Plus users quickly master the intuitive operation of the Workbench and can build working interfaces in a matter of hours - often without consulting manuals. As an aid to bridging the gap between the development and runtime environments, the Workbench provides the option of generating a skeleton source code program (in C, ANSI C, C++, and Ada) which fully displays and manages the designed GUI. This Workbench-generated code includes the calls to the TAE Plus runtime services and the Window Programming Tools (WPTs). The separation of the user interface from the application code allows changes to be made easily to an application's GUI without recompiling or relinking the software, and also hides the complexities of the underlying X and Motif windowing services from the application. [http://groucho.gsfc.nasa.gov/Code_520/Code_522/Projects/TAE/Bulletin/TAE_Bulletin3.htm] Unix - Paradise Paradise is a set of Ada packages intended to provide an interface to the Unix operating system, and more specifically to the communication routines, that are accessed via file descriptors. It lets the Ada programmer use files, pipes, and sockets, as well as signals, error codes, environment variables, etc., using an interface that looks as much as possible like the C interface. Paradise supports multi-tasking: any input or output is blocking for the calling task only, and not for the entire process. Paradise is intended to be system-independant and compiler-independant; so far, it works on four environments: - SunOS 4.1 (Sparc) and SunAda (Verdix 6.1) compiler - SunOS 4.1 (Sparc) and TeleSoft 4.1.1 compiler - HP-UX (HP9000/700) and HP-Ada (Alsys) compiler - HP-UX (HP9000/700) and Verdix 6.3d compiler It is known not to work well on SunOS/Alsys, because of problems on signal handlers; For people who would like to port it to other environments, information on portability is displayed inside the code. A programmer's guide should appear in future versions. Send all comments, bug reports, patches to "paradise@cenatls.cena.dgac.fr" (Nicolas Courtel). [http://archive.adaic.com/tools/bindings/paradise/] Ada Binding to XModem and Kermit Network Protocols This is a set of Ada packages that implement the file transfer protocols only (for X_Modem and Kermit protocols). The documentation is complete and the implementation encourages reuse of this tool in a variety of ways.hpot [http://archive.adaic.com/tools/bindings/xmodem-kermit/] X-Windows - Motif These are the BCA/STARS Motif Ada bindings. Motif is an X-Windows based toolkit for user interface development. The BCA Motif Ada bindings are a binding to (not an implementation of): - the Motif widget (user interface object) set, and - a subset of the Motif functions You must have the Motif object code libraries to use this software. The bindings were developed using Motif version 1.0.1 and have not been tested under 1.1. [http://archive.adaic.com/tools/bindings/MOTIF/] X-Windows - X, Xlib, Xt, Motif This is a complete set of Ada Xlib/Xt/Motif bindings, and a set of examples. The Ada Xlib/Xt/Motif bindings require the existance of the C Xlib/Xt/Motif bindings. (Ie: the include files and the libraries are available). The actual bindings are pure Ada code, produced by tools written in Ada and C, with all the tools etc. in the tar file. The C tools are compiled using your system's Xlib, Xt, and Xm include files, and they use the information found there to produce Ada representation clauses, constants, etc. that exactly match the C representations of the structures, etc. This is how this kit can reliably generate bindings for a range of architectures, regardless of word-size, alignment-rules, etc. These bindings are for X11R4/Motif 1.1, X11R5/Motif 1.2 and DECMotif Extensions. These bindings are meant for DEC Ada 3.0 and later on OSF/1 and OpenVMS. They should work, or be easily modified to work, on many other Ada compilers and platforms. [http://archive.adaic.com/tools/bindings/Xlib-Xt-Xm-bindings/] X-Windows - Ada/X Toolkit This software package provides an Ada programmatic interface to a set of reusable user interface abstractions known as widgets. The software provides the full functionality of the M.I.T X Consortium Version 11 Release 4 X Window System. The software consists of three components: an Ada binding to the Xlib layer, an Ada implementation of the Xt Intrinsics layer, and an Ada widget library. The Ada binding to the Xlib layer upgrades the STARS Foundations Ada Xlib binding, and provides a protocol interface with a set of graphics drawing primitives. The Xt Intrinsics layer provides a policy-free mechanism for creating and managing user interface objects. User interface objects are contained in the widget library, which consists of a small set of commonly used user interface abstractions such as scroll bars and command buttons. This product was developed as part of the Software Technology for Adaptable, Reliable Systems (STARS) program, sponsored by the Advanced Research Projects Agency (ARPA). [http://archive.adaic.com/tools/bindings/X-toolkit/]
These package specifications were extracted from IEEE Std 1003.5-1992, IEEE Standard for Information Technology - POSIX Ada Language Interfaces - Part 1: Binding System Application Program Interface, copyright (c) 1992 by the Institute of Electrical and Electronics Engineers, Inc. These package specifications represent only a portion of the document and are not to be interpreteted as the approved consensus standard. The IEEE Std 1003.5-1992 must be used in conjunction with these package specifications in order to claim conformance. The IEEE takes no responsibility for and will assume no liability for damages resulting from the reader's misinpretation of said information resulting from its out of context nature. To order copies of the IEEE Std 1003.5-1992, please contact the IEEE Service Center at 445 Hoes Lane, PO Box 1331, Piscataway, NJ 08855-1331; via phone at 1-800-678-IEEE, 908-981-1393; or via fax at 908-981-9667.
Note that these specifications are incomplete, in that the standard identifies some declarations as implementation-defined. In addition, no package bodies are provided.
This standard was developed by IEEE Working Group P1003.5. For more information on this group, contact the Chairman, James Lonjers, lonjers@vfl.paramax.com or 805/987-9457. Formal requests for interpretations of this standard should be addressed to the IEEE, as specified in the document. An e-mail list discussing ongoing POSIX/Ada binding work is available as "posix-ada@verdix.com". Send e-mail to "posixadarequest@verdix.com" to be included on the list. Current work in IEEE P1003.5 consists of the Ada Binding to POSIX Real-Time Extensions (IEEE Project P1003.20) and current interpretations of IEEE Std 1003.5-1992.
[http://archive.adaic.com/tools/bindings/POSIX/ada83/]
POSIX - Ada 95 These are POSIX .5 library specs. The library is under development, and this is a work-in-progress version release. A work-in-progress implementation of the package bodies should also be available shortly. (For more information via the World Wide Web, look into the PART Home page: "http://www.cs.fsu.edu/~doh/") For questions and suggestions, e-mail can be sent to part@ada.cs.fsu.edu. [http://archive.adaic.com/tools/bindings/POSIX/ada95/] POSIX Ada Run-Time System Libraries (PART) This is a pointer file to the POSIX Ada Run-Time System Libraries (PART), which contains code from one of the projects supported by the Ada Joint Program Office's FY91 Ada Technology Insertion Program (ATIP). PART is available to the public from Florida State University (FSU) for non-commercial use. See copyright note near end. PART can be obtained by anonymous FTP from FSU's ftp server (ftp.cs.fsu.edu). The release there is version 1.2 of the POSIX Ada Run-Time System Library (PART) using a CARTS interface [3]. It is implemented over the POSIX 1003.4a Threads Extension (Pthreads) [1], and requires access to an interface compliant with that standard. The purpose of this release of PART is to demonstrate the feasibility of implementing an Ada '83 run-time system over POSIX threads, and disclose the full details of one such implementation. By mapping Ada tasks onto POSIX threads, this approach should enhance the portability of Ada runtime systems and provide a platform for exploiting shared-memory multiprocessors. [ftp://ftp.cs.fsu.edu/pub/PART] SQL - A Prototype Binding of ANSI-Standard SQL to Ada Supporting the SAME Methodology This is the final release of the Computer Software Configuration Item (CSCI) identified as the IBM STARS Prototype Binding of Ansi-Standard SQL to Ada Supporting the SQL Ada Module Extensions (SAME) Methodology. This software was developed for the DoD's Software Technology for Adaptable, Reliable Systems (STARS) Program. The primary purpose of the Binding of ANSI-Standard SQL to Ada is to provide access to relational data bases that support SQL from within an Ada program. The secondary purpose of this project is to provide this access by implementing the SAME approach to data base interface as described in Guidelines for Use of the SAME, Technical Report CMU/SEI-89-TR-16. SAME is a specialization of the modular approach for implementing an interface between a programming language (in this case Ada) and a DBMS whose data manipulation language is SQL. SAME is an extension of the existing SQL module language standard meant to maximize Ada language capabilities. SAME provides an abstraction/mapping between an Ada program's objects and the weakly typed SQL concrete types through a layer that exists between the application program and the actual interface to the data base. To use SAME without any automated support would be a time consuming task. This project will provide such automated support. [http://archive.adaic.com/tools/bindings/SQL] SQL - SAMeDL Development Environment This is a release of the Intermetrics SAMeDL Development Environment. This software has been provided as part of a research and development effort under the Ada Technology Insertion Program (ATIP) in an effort to investigate and promote Ada/SQL interfacing technology, namely SAMeDL, within the Ada community. Although all attempts have been made to make this software as robust as possible, it is not of production quality. Deficiencies and problems are inherent and should not be used as a means for negatively judging the merits of SAMeDL. The challenges pertaining to the use of Ada and SQL in a well-engineered information system led to the formation of the SQL Ada Module Extension Design Committee (SAME-DC) at the Software Engineering Institute (SEI). The committee developed the SQL Ada Module Extension (SAME) Methodology to support and extend the modular approach to using Ada and SQL in database applications. The language which is used to implement SAME is the SQL Ada Module Description Language, or SAMeDL. Using the SAME methodology requires that SQL statements be separated from the Ada application code, and encapsulated in separate modules. The SQL statements are not embedded in the Ada packages, thus isolating the Ada application from the DBMS design and implementation. SAMeDL is designed to facilitate the construction of Ada database applications that use the SAME methodology. [http://archive.adaic.com/tools/bindings/SAMeDL/] TCP/IP - Secure File Transfer Program (SFTP) The Secure File Transfer Program provides a means of transferring sensitive information from one computer system to another. This system implements Transmission Control Protocol (TCP) and conforms to RFC:793. TCP provides a reliable communication between pairs of processes in logically distinct hosts on networks and sets of interconnected networks. The TCP resides in the transport layer of the DoD Internet Model. The system encapsulates messages received from the utility layer protocols, which reside directly above, and passes the packet to the Internet layer (communicates with the Internet Protocol (IP)). The TCP supports the following functions: connection-oriented, reliable data transfer, ordered data transfer delivery, full-duplex, and flow control. This product was developed as part of the Software Technology for Adaptable, Reliable Systems (STARS) program, sponsored by the Advanced Research Projects Agency (ARPA). [http://archive.adaic.com/tools/SFTP/] Transportable Applications Enviornment (TAE) The Transportable Applications Environment (TAE) Project is a state-of-the-art user interface development and management system, that provides services and tools for developing and managing graphically-oriented user interfaces, as well as providing common application executive services. The main component of TAE Plus is a WYSIWYG user interface designer's Workbench that allows an application developer to interactively construct a graphical user interface (GUI) by arranging and manipulating TAE Plus "interaction objects". These interaction objects include both user entry items (e.g., radio buttons, text keyin, icon buttons) and real-time dynamic data objects (e.g., dials, sliders, gauges, and discrete picture sequences). The Workbench also provides the capability to dynamically define "connections" between interaction objects, as well as to rehearse the designed GUI dialogue. The TAE Plus Workbench is a tool for building user interfaces. It is designed for both non-programmers and programmers. Knowledge of OSF/Motif or the X Window System is not necessary. New TAE Plus users quickly master the intuitive operation of the Workbench and can build working interfaces in a matter of hours - often without consulting manuals. As an aid to bridging the gap between the development and runtime environments, the Workbench provides the option of generating a skeleton source code program (in C, ANSI C, C++, and Ada) which fully displays and manages the designed GUI. This Workbench-generated code includes the calls to the TAE Plus runtime services and the Window Programming Tools (WPTs). The separation of the user interface from the application code allows changes to be made easily to an application's GUI without recompiling or relinking the software, and also hides the complexities of the underlying X and Motif windowing services from the application. [http://groucho.gsfc.nasa.gov/Code_520/Code_522/Projects/TAE/Bulletin/TAE_Bulletin3.htm] Unix - Paradise Paradise is a set of Ada packages intended to provide an interface to the Unix operating system, and more specifically to the communication routines, that are accessed via file descriptors. It lets the Ada programmer use files, pipes, and sockets, as well as signals, error codes, environment variables, etc., using an interface that looks as much as possible like the C interface. Paradise supports multi-tasking: any input or output is blocking for the calling task only, and not for the entire process. Paradise is intended to be system-independant and compiler-independant; so far, it works on four environments: - SunOS 4.1 (Sparc) and SunAda (Verdix 6.1) compiler - SunOS 4.1 (Sparc) and TeleSoft 4.1.1 compiler - HP-UX (HP9000/700) and HP-Ada (Alsys) compiler - HP-UX (HP9000/700) and Verdix 6.3d compiler It is known not to work well on SunOS/Alsys, because of problems on signal handlers; For people who would like to port it to other environments, information on portability is displayed inside the code. A programmer's guide should appear in future versions. Send all comments, bug reports, patches to "paradise@cenatls.cena.dgac.fr" (Nicolas Courtel). [http://archive.adaic.com/tools/bindings/paradise/] Ada Binding to XModem and Kermit Network Protocols This is a set of Ada packages that implement the file transfer protocols only (for X_Modem and Kermit protocols). The documentation is complete and the implementation encourages reuse of this tool in a variety of ways.hpot [http://archive.adaic.com/tools/bindings/xmodem-kermit/] X-Windows - Motif These are the BCA/STARS Motif Ada bindings. Motif is an X-Windows based toolkit for user interface development. The BCA Motif Ada bindings are a binding to (not an implementation of): - the Motif widget (user interface object) set, and - a subset of the Motif functions You must have the Motif object code libraries to use this software. The bindings were developed using Motif version 1.0.1 and have not been tested under 1.1. [http://archive.adaic.com/tools/bindings/MOTIF/] X-Windows - X, Xlib, Xt, Motif This is a complete set of Ada Xlib/Xt/Motif bindings, and a set of examples. The Ada Xlib/Xt/Motif bindings require the existance of the C Xlib/Xt/Motif bindings. (Ie: the include files and the libraries are available). The actual bindings are pure Ada code, produced by tools written in Ada and C, with all the tools etc. in the tar file. The C tools are compiled using your system's Xlib, Xt, and Xm include files, and they use the information found there to produce Ada representation clauses, constants, etc. that exactly match the C representations of the structures, etc. This is how this kit can reliably generate bindings for a range of architectures, regardless of word-size, alignment-rules, etc. These bindings are for X11R4/Motif 1.1, X11R5/Motif 1.2 and DECMotif Extensions. These bindings are meant for DEC Ada 3.0 and later on OSF/1 and OpenVMS. They should work, or be easily modified to work, on many other Ada compilers and platforms. [http://archive.adaic.com/tools/bindings/Xlib-Xt-Xm-bindings/] X-Windows - Ada/X Toolkit This software package provides an Ada programmatic interface to a set of reusable user interface abstractions known as widgets. The software provides the full functionality of the M.I.T X Consortium Version 11 Release 4 X Window System. The software consists of three components: an Ada binding to the Xlib layer, an Ada implementation of the Xt Intrinsics layer, and an Ada widget library. The Ada binding to the Xlib layer upgrades the STARS Foundations Ada Xlib binding, and provides a protocol interface with a set of graphics drawing primitives. The Xt Intrinsics layer provides a policy-free mechanism for creating and managing user interface objects. User interface objects are contained in the widget library, which consists of a small set of commonly used user interface abstractions such as scroll bars and command buttons. This product was developed as part of the Software Technology for Adaptable, Reliable Systems (STARS) program, sponsored by the Advanced Research Projects Agency (ARPA). [http://archive.adaic.com/tools/bindings/X-toolkit/]
A work-in-progress implementation of the package bodies should also be available shortly. (For more information via the World Wide Web, look into the PART Home page: "http://www.cs.fsu.edu/~doh/") For questions and suggestions, e-mail can be sent to part@ada.cs.fsu.edu.
[http://archive.adaic.com/tools/bindings/POSIX/ada95/]
POSIX Ada Run-Time System Libraries (PART) This is a pointer file to the POSIX Ada Run-Time System Libraries (PART), which contains code from one of the projects supported by the Ada Joint Program Office's FY91 Ada Technology Insertion Program (ATIP). PART is available to the public from Florida State University (FSU) for non-commercial use. See copyright note near end. PART can be obtained by anonymous FTP from FSU's ftp server (ftp.cs.fsu.edu). The release there is version 1.2 of the POSIX Ada Run-Time System Library (PART) using a CARTS interface [3]. It is implemented over the POSIX 1003.4a Threads Extension (Pthreads) [1], and requires access to an interface compliant with that standard. The purpose of this release of PART is to demonstrate the feasibility of implementing an Ada '83 run-time system over POSIX threads, and disclose the full details of one such implementation. By mapping Ada tasks onto POSIX threads, this approach should enhance the portability of Ada runtime systems and provide a platform for exploiting shared-memory multiprocessors. [ftp://ftp.cs.fsu.edu/pub/PART] SQL - A Prototype Binding of ANSI-Standard SQL to Ada Supporting the SAME Methodology This is the final release of the Computer Software Configuration Item (CSCI) identified as the IBM STARS Prototype Binding of Ansi-Standard SQL to Ada Supporting the SQL Ada Module Extensions (SAME) Methodology. This software was developed for the DoD's Software Technology for Adaptable, Reliable Systems (STARS) Program. The primary purpose of the Binding of ANSI-Standard SQL to Ada is to provide access to relational data bases that support SQL from within an Ada program. The secondary purpose of this project is to provide this access by implementing the SAME approach to data base interface as described in Guidelines for Use of the SAME, Technical Report CMU/SEI-89-TR-16. SAME is a specialization of the modular approach for implementing an interface between a programming language (in this case Ada) and a DBMS whose data manipulation language is SQL. SAME is an extension of the existing SQL module language standard meant to maximize Ada language capabilities. SAME provides an abstraction/mapping between an Ada program's objects and the weakly typed SQL concrete types through a layer that exists between the application program and the actual interface to the data base. To use SAME without any automated support would be a time consuming task. This project will provide such automated support. [http://archive.adaic.com/tools/bindings/SQL] SQL - SAMeDL Development Environment This is a release of the Intermetrics SAMeDL Development Environment. This software has been provided as part of a research and development effort under the Ada Technology Insertion Program (ATIP) in an effort to investigate and promote Ada/SQL interfacing technology, namely SAMeDL, within the Ada community. Although all attempts have been made to make this software as robust as possible, it is not of production quality. Deficiencies and problems are inherent and should not be used as a means for negatively judging the merits of SAMeDL. The challenges pertaining to the use of Ada and SQL in a well-engineered information system led to the formation of the SQL Ada Module Extension Design Committee (SAME-DC) at the Software Engineering Institute (SEI). The committee developed the SQL Ada Module Extension (SAME) Methodology to support and extend the modular approach to using Ada and SQL in database applications. The language which is used to implement SAME is the SQL Ada Module Description Language, or SAMeDL. Using the SAME methodology requires that SQL statements be separated from the Ada application code, and encapsulated in separate modules. The SQL statements are not embedded in the Ada packages, thus isolating the Ada application from the DBMS design and implementation. SAMeDL is designed to facilitate the construction of Ada database applications that use the SAME methodology. [http://archive.adaic.com/tools/bindings/SAMeDL/] TCP/IP - Secure File Transfer Program (SFTP) The Secure File Transfer Program provides a means of transferring sensitive information from one computer system to another. This system implements Transmission Control Protocol (TCP) and conforms to RFC:793. TCP provides a reliable communication between pairs of processes in logically distinct hosts on networks and sets of interconnected networks. The TCP resides in the transport layer of the DoD Internet Model. The system encapsulates messages received from the utility layer protocols, which reside directly above, and passes the packet to the Internet layer (communicates with the Internet Protocol (IP)). The TCP supports the following functions: connection-oriented, reliable data transfer, ordered data transfer delivery, full-duplex, and flow control. This product was developed as part of the Software Technology for Adaptable, Reliable Systems (STARS) program, sponsored by the Advanced Research Projects Agency (ARPA). [http://archive.adaic.com/tools/SFTP/] Transportable Applications Enviornment (TAE) The Transportable Applications Environment (TAE) Project is a state-of-the-art user interface development and management system, that provides services and tools for developing and managing graphically-oriented user interfaces, as well as providing common application executive services. The main component of TAE Plus is a WYSIWYG user interface designer's Workbench that allows an application developer to interactively construct a graphical user interface (GUI) by arranging and manipulating TAE Plus "interaction objects". These interaction objects include both user entry items (e.g., radio buttons, text keyin, icon buttons) and real-time dynamic data objects (e.g., dials, sliders, gauges, and discrete picture sequences). The Workbench also provides the capability to dynamically define "connections" between interaction objects, as well as to rehearse the designed GUI dialogue. The TAE Plus Workbench is a tool for building user interfaces. It is designed for both non-programmers and programmers. Knowledge of OSF/Motif or the X Window System is not necessary. New TAE Plus users quickly master the intuitive operation of the Workbench and can build working interfaces in a matter of hours - often without consulting manuals. As an aid to bridging the gap between the development and runtime environments, the Workbench provides the option of generating a skeleton source code program (in C, ANSI C, C++, and Ada) which fully displays and manages the designed GUI. This Workbench-generated code includes the calls to the TAE Plus runtime services and the Window Programming Tools (WPTs). The separation of the user interface from the application code allows changes to be made easily to an application's GUI without recompiling or relinking the software, and also hides the complexities of the underlying X and Motif windowing services from the application. [http://groucho.gsfc.nasa.gov/Code_520/Code_522/Projects/TAE/Bulletin/TAE_Bulletin3.htm] Unix - Paradise Paradise is a set of Ada packages intended to provide an interface to the Unix operating system, and more specifically to the communication routines, that are accessed via file descriptors. It lets the Ada programmer use files, pipes, and sockets, as well as signals, error codes, environment variables, etc., using an interface that looks as much as possible like the C interface. Paradise supports multi-tasking: any input or output is blocking for the calling task only, and not for the entire process. Paradise is intended to be system-independant and compiler-independant; so far, it works on four environments: - SunOS 4.1 (Sparc) and SunAda (Verdix 6.1) compiler - SunOS 4.1 (Sparc) and TeleSoft 4.1.1 compiler - HP-UX (HP9000/700) and HP-Ada (Alsys) compiler - HP-UX (HP9000/700) and Verdix 6.3d compiler It is known not to work well on SunOS/Alsys, because of problems on signal handlers; For people who would like to port it to other environments, information on portability is displayed inside the code. A programmer's guide should appear in future versions. Send all comments, bug reports, patches to "paradise@cenatls.cena.dgac.fr" (Nicolas Courtel). [http://archive.adaic.com/tools/bindings/paradise/] Ada Binding to XModem and Kermit Network Protocols This is a set of Ada packages that implement the file transfer protocols only (for X_Modem and Kermit protocols). The documentation is complete and the implementation encourages reuse of this tool in a variety of ways.hpot [http://archive.adaic.com/tools/bindings/xmodem-kermit/] X-Windows - Motif These are the BCA/STARS Motif Ada bindings. Motif is an X-Windows based toolkit for user interface development. The BCA Motif Ada bindings are a binding to (not an implementation of): - the Motif widget (user interface object) set, and - a subset of the Motif functions You must have the Motif object code libraries to use this software. The bindings were developed using Motif version 1.0.1 and have not been tested under 1.1. [http://archive.adaic.com/tools/bindings/MOTIF/] X-Windows - X, Xlib, Xt, Motif This is a complete set of Ada Xlib/Xt/Motif bindings, and a set of examples. The Ada Xlib/Xt/Motif bindings require the existance of the C Xlib/Xt/Motif bindings. (Ie: the include files and the libraries are available). The actual bindings are pure Ada code, produced by tools written in Ada and C, with all the tools etc. in the tar file. The C tools are compiled using your system's Xlib, Xt, and Xm include files, and they use the information found there to produce Ada representation clauses, constants, etc. that exactly match the C representations of the structures, etc. This is how this kit can reliably generate bindings for a range of architectures, regardless of word-size, alignment-rules, etc. These bindings are for X11R4/Motif 1.1, X11R5/Motif 1.2 and DECMotif Extensions. These bindings are meant for DEC Ada 3.0 and later on OSF/1 and OpenVMS. They should work, or be easily modified to work, on many other Ada compilers and platforms. [http://archive.adaic.com/tools/bindings/Xlib-Xt-Xm-bindings/] X-Windows - Ada/X Toolkit This software package provides an Ada programmatic interface to a set of reusable user interface abstractions known as widgets. The software provides the full functionality of the M.I.T X Consortium Version 11 Release 4 X Window System. The software consists of three components: an Ada binding to the Xlib layer, an Ada implementation of the Xt Intrinsics layer, and an Ada widget library. The Ada binding to the Xlib layer upgrades the STARS Foundations Ada Xlib binding, and provides a protocol interface with a set of graphics drawing primitives. The Xt Intrinsics layer provides a policy-free mechanism for creating and managing user interface objects. User interface objects are contained in the widget library, which consists of a small set of commonly used user interface abstractions such as scroll bars and command buttons. This product was developed as part of the Software Technology for Adaptable, Reliable Systems (STARS) program, sponsored by the Advanced Research Projects Agency (ARPA). [http://archive.adaic.com/tools/bindings/X-toolkit/]
PART is available to the public from Florida State University (FSU) for non-commercial use. See copyright note near end. PART can be obtained by anonymous FTP from FSU's ftp server (ftp.cs.fsu.edu).
The release there is version 1.2 of the POSIX Ada Run-Time System Library (PART) using a CARTS interface [3]. It is implemented over the POSIX 1003.4a Threads Extension (Pthreads) [1], and requires access to an interface compliant with that standard.
The purpose of this release of PART is to demonstrate the feasibility of implementing an Ada '83 run-time system over POSIX threads, and disclose the full details of one such implementation. By mapping Ada tasks onto POSIX threads, this approach should enhance the portability of Ada runtime systems and provide a platform for exploiting shared-memory multiprocessors. [ftp://ftp.cs.fsu.edu/pub/PART]
SQL - A Prototype Binding of ANSI-Standard SQL to Ada Supporting the SAME Methodology This is the final release of the Computer Software Configuration Item (CSCI) identified as the IBM STARS Prototype Binding of Ansi-Standard SQL to Ada Supporting the SQL Ada Module Extensions (SAME) Methodology. This software was developed for the DoD's Software Technology for Adaptable, Reliable Systems (STARS) Program. The primary purpose of the Binding of ANSI-Standard SQL to Ada is to provide access to relational data bases that support SQL from within an Ada program. The secondary purpose of this project is to provide this access by implementing the SAME approach to data base interface as described in Guidelines for Use of the SAME, Technical Report CMU/SEI-89-TR-16. SAME is a specialization of the modular approach for implementing an interface between a programming language (in this case Ada) and a DBMS whose data manipulation language is SQL. SAME is an extension of the existing SQL module language standard meant to maximize Ada language capabilities. SAME provides an abstraction/mapping between an Ada program's objects and the weakly typed SQL concrete types through a layer that exists between the application program and the actual interface to the data base. To use SAME without any automated support would be a time consuming task. This project will provide such automated support. [http://archive.adaic.com/tools/bindings/SQL] SQL - SAMeDL Development Environment This is a release of the Intermetrics SAMeDL Development Environment. This software has been provided as part of a research and development effort under the Ada Technology Insertion Program (ATIP) in an effort to investigate and promote Ada/SQL interfacing technology, namely SAMeDL, within the Ada community. Although all attempts have been made to make this software as robust as possible, it is not of production quality. Deficiencies and problems are inherent and should not be used as a means for negatively judging the merits of SAMeDL. The challenges pertaining to the use of Ada and SQL in a well-engineered information system led to the formation of the SQL Ada Module Extension Design Committee (SAME-DC) at the Software Engineering Institute (SEI). The committee developed the SQL Ada Module Extension (SAME) Methodology to support and extend the modular approach to using Ada and SQL in database applications. The language which is used to implement SAME is the SQL Ada Module Description Language, or SAMeDL. Using the SAME methodology requires that SQL statements be separated from the Ada application code, and encapsulated in separate modules. The SQL statements are not embedded in the Ada packages, thus isolating the Ada application from the DBMS design and implementation. SAMeDL is designed to facilitate the construction of Ada database applications that use the SAME methodology. [http://archive.adaic.com/tools/bindings/SAMeDL/] TCP/IP - Secure File Transfer Program (SFTP) The Secure File Transfer Program provides a means of transferring sensitive information from one computer system to another. This system implements Transmission Control Protocol (TCP) and conforms to RFC:793. TCP provides a reliable communication between pairs of processes in logically distinct hosts on networks and sets of interconnected networks. The TCP resides in the transport layer of the DoD Internet Model. The system encapsulates messages received from the utility layer protocols, which reside directly above, and passes the packet to the Internet layer (communicates with the Internet Protocol (IP)). The TCP supports the following functions: connection-oriented, reliable data transfer, ordered data transfer delivery, full-duplex, and flow control. This product was developed as part of the Software Technology for Adaptable, Reliable Systems (STARS) program, sponsored by the Advanced Research Projects Agency (ARPA). [http://archive.adaic.com/tools/SFTP/] Transportable Applications Enviornment (TAE) The Transportable Applications Environment (TAE) Project is a state-of-the-art user interface development and management system, that provides services and tools for developing and managing graphically-oriented user interfaces, as well as providing common application executive services. The main component of TAE Plus is a WYSIWYG user interface designer's Workbench that allows an application developer to interactively construct a graphical user interface (GUI) by arranging and manipulating TAE Plus "interaction objects". These interaction objects include both user entry items (e.g., radio buttons, text keyin, icon buttons) and real-time dynamic data objects (e.g., dials, sliders, gauges, and discrete picture sequences). The Workbench also provides the capability to dynamically define "connections" between interaction objects, as well as to rehearse the designed GUI dialogue. The TAE Plus Workbench is a tool for building user interfaces. It is designed for both non-programmers and programmers. Knowledge of OSF/Motif or the X Window System is not necessary. New TAE Plus users quickly master the intuitive operation of the Workbench and can build working interfaces in a matter of hours - often without consulting manuals. As an aid to bridging the gap between the development and runtime environments, the Workbench provides the option of generating a skeleton source code program (in C, ANSI C, C++, and Ada) which fully displays and manages the designed GUI. This Workbench-generated code includes the calls to the TAE Plus runtime services and the Window Programming Tools (WPTs). The separation of the user interface from the application code allows changes to be made easily to an application's GUI without recompiling or relinking the software, and also hides the complexities of the underlying X and Motif windowing services from the application. [http://groucho.gsfc.nasa.gov/Code_520/Code_522/Projects/TAE/Bulletin/TAE_Bulletin3.htm] Unix - Paradise Paradise is a set of Ada packages intended to provide an interface to the Unix operating system, and more specifically to the communication routines, that are accessed via file descriptors. It lets the Ada programmer use files, pipes, and sockets, as well as signals, error codes, environment variables, etc., using an interface that looks as much as possible like the C interface. Paradise supports multi-tasking: any input or output is blocking for the calling task only, and not for the entire process. Paradise is intended to be system-independant and compiler-independant; so far, it works on four environments: - SunOS 4.1 (Sparc) and SunAda (Verdix 6.1) compiler - SunOS 4.1 (Sparc) and TeleSoft 4.1.1 compiler - HP-UX (HP9000/700) and HP-Ada (Alsys) compiler - HP-UX (HP9000/700) and Verdix 6.3d compiler It is known not to work well on SunOS/Alsys, because of problems on signal handlers; For people who would like to port it to other environments, information on portability is displayed inside the code. A programmer's guide should appear in future versions. Send all comments, bug reports, patches to "paradise@cenatls.cena.dgac.fr" (Nicolas Courtel). [http://archive.adaic.com/tools/bindings/paradise/] Ada Binding to XModem and Kermit Network Protocols This is a set of Ada packages that implement the file transfer protocols only (for X_Modem and Kermit protocols). The documentation is complete and the implementation encourages reuse of this tool in a variety of ways.hpot [http://archive.adaic.com/tools/bindings/xmodem-kermit/] X-Windows - Motif These are the BCA/STARS Motif Ada bindings. Motif is an X-Windows based toolkit for user interface development. The BCA Motif Ada bindings are a binding to (not an implementation of): - the Motif widget (user interface object) set, and - a subset of the Motif functions You must have the Motif object code libraries to use this software. The bindings were developed using Motif version 1.0.1 and have not been tested under 1.1. [http://archive.adaic.com/tools/bindings/MOTIF/] X-Windows - X, Xlib, Xt, Motif This is a complete set of Ada Xlib/Xt/Motif bindings, and a set of examples. The Ada Xlib/Xt/Motif bindings require the existance of the C Xlib/Xt/Motif bindings. (Ie: the include files and the libraries are available). The actual bindings are pure Ada code, produced by tools written in Ada and C, with all the tools etc. in the tar file. The C tools are compiled using your system's Xlib, Xt, and Xm include files, and they use the information found there to produce Ada representation clauses, constants, etc. that exactly match the C representations of the structures, etc. This is how this kit can reliably generate bindings for a range of architectures, regardless of word-size, alignment-rules, etc. These bindings are for X11R4/Motif 1.1, X11R5/Motif 1.2 and DECMotif Extensions. These bindings are meant for DEC Ada 3.0 and later on OSF/1 and OpenVMS. They should work, or be easily modified to work, on many other Ada compilers and platforms. [http://archive.adaic.com/tools/bindings/Xlib-Xt-Xm-bindings/] X-Windows - Ada/X Toolkit This software package provides an Ada programmatic interface to a set of reusable user interface abstractions known as widgets. The software provides the full functionality of the M.I.T X Consortium Version 11 Release 4 X Window System. The software consists of three components: an Ada binding to the Xlib layer, an Ada implementation of the Xt Intrinsics layer, and an Ada widget library. The Ada binding to the Xlib layer upgrades the STARS Foundations Ada Xlib binding, and provides a protocol interface with a set of graphics drawing primitives. The Xt Intrinsics layer provides a policy-free mechanism for creating and managing user interface objects. User interface objects are contained in the widget library, which consists of a small set of commonly used user interface abstractions such as scroll bars and command buttons. This product was developed as part of the Software Technology for Adaptable, Reliable Systems (STARS) program, sponsored by the Advanced Research Projects Agency (ARPA). [http://archive.adaic.com/tools/bindings/X-toolkit/]
The primary purpose of the Binding of ANSI-Standard SQL to Ada is to provide access to relational data bases that support SQL from within an Ada program. The secondary purpose of this project is to provide this access by implementing the SAME approach to data base interface as described in Guidelines for Use of the SAME, Technical Report CMU/SEI-89-TR-16. SAME is a specialization of the modular approach for implementing an interface between a programming language (in this case Ada) and a DBMS whose data manipulation language is SQL. SAME is an extension of the existing SQL module language standard meant to maximize Ada language capabilities. SAME provides an abstraction/mapping between an Ada program's objects and the weakly typed SQL concrete types through a layer that exists between the application program and the actual interface to the data base. To use SAME without any automated support would be a time consuming task. This project will provide such automated support.
[http://archive.adaic.com/tools/bindings/SQL]
SQL - SAMeDL Development Environment This is a release of the Intermetrics SAMeDL Development Environment. This software has been provided as part of a research and development effort under the Ada Technology Insertion Program (ATIP) in an effort to investigate and promote Ada/SQL interfacing technology, namely SAMeDL, within the Ada community. Although all attempts have been made to make this software as robust as possible, it is not of production quality. Deficiencies and problems are inherent and should not be used as a means for negatively judging the merits of SAMeDL. The challenges pertaining to the use of Ada and SQL in a well-engineered information system led to the formation of the SQL Ada Module Extension Design Committee (SAME-DC) at the Software Engineering Institute (SEI). The committee developed the SQL Ada Module Extension (SAME) Methodology to support and extend the modular approach to using Ada and SQL in database applications. The language which is used to implement SAME is the SQL Ada Module Description Language, or SAMeDL. Using the SAME methodology requires that SQL statements be separated from the Ada application code, and encapsulated in separate modules. The SQL statements are not embedded in the Ada packages, thus isolating the Ada application from the DBMS design and implementation. SAMeDL is designed to facilitate the construction of Ada database applications that use the SAME methodology. [http://archive.adaic.com/tools/bindings/SAMeDL/] TCP/IP - Secure File Transfer Program (SFTP) The Secure File Transfer Program provides a means of transferring sensitive information from one computer system to another. This system implements Transmission Control Protocol (TCP) and conforms to RFC:793. TCP provides a reliable communication between pairs of processes in logically distinct hosts on networks and sets of interconnected networks. The TCP resides in the transport layer of the DoD Internet Model. The system encapsulates messages received from the utility layer protocols, which reside directly above, and passes the packet to the Internet layer (communicates with the Internet Protocol (IP)). The TCP supports the following functions: connection-oriented, reliable data transfer, ordered data transfer delivery, full-duplex, and flow control. This product was developed as part of the Software Technology for Adaptable, Reliable Systems (STARS) program, sponsored by the Advanced Research Projects Agency (ARPA). [http://archive.adaic.com/tools/SFTP/] Transportable Applications Enviornment (TAE) The Transportable Applications Environment (TAE) Project is a state-of-the-art user interface development and management system, that provides services and tools for developing and managing graphically-oriented user interfaces, as well as providing common application executive services. The main component of TAE Plus is a WYSIWYG user interface designer's Workbench that allows an application developer to interactively construct a graphical user interface (GUI) by arranging and manipulating TAE Plus "interaction objects". These interaction objects include both user entry items (e.g., radio buttons, text keyin, icon buttons) and real-time dynamic data objects (e.g., dials, sliders, gauges, and discrete picture sequences). The Workbench also provides the capability to dynamically define "connections" between interaction objects, as well as to rehearse the designed GUI dialogue. The TAE Plus Workbench is a tool for building user interfaces. It is designed for both non-programmers and programmers. Knowledge of OSF/Motif or the X Window System is not necessary. New TAE Plus users quickly master the intuitive operation of the Workbench and can build working interfaces in a matter of hours - often without consulting manuals. As an aid to bridging the gap between the development and runtime environments, the Workbench provides the option of generating a skeleton source code program (in C, ANSI C, C++, and Ada) which fully displays and manages the designed GUI. This Workbench-generated code includes the calls to the TAE Plus runtime services and the Window Programming Tools (WPTs). The separation of the user interface from the application code allows changes to be made easily to an application's GUI without recompiling or relinking the software, and also hides the complexities of the underlying X and Motif windowing services from the application. [http://groucho.gsfc.nasa.gov/Code_520/Code_522/Projects/TAE/Bulletin/TAE_Bulletin3.htm] Unix - Paradise Paradise is a set of Ada packages intended to provide an interface to the Unix operating system, and more specifically to the communication routines, that are accessed via file descriptors. It lets the Ada programmer use files, pipes, and sockets, as well as signals, error codes, environment variables, etc., using an interface that looks as much as possible like the C interface. Paradise supports multi-tasking: any input or output is blocking for the calling task only, and not for the entire process. Paradise is intended to be system-independant and compiler-independant; so far, it works on four environments: - SunOS 4.1 (Sparc) and SunAda (Verdix 6.1) compiler - SunOS 4.1 (Sparc) and TeleSoft 4.1.1 compiler - HP-UX (HP9000/700) and HP-Ada (Alsys) compiler - HP-UX (HP9000/700) and Verdix 6.3d compiler It is known not to work well on SunOS/Alsys, because of problems on signal handlers; For people who would like to port it to other environments, information on portability is displayed inside the code. A programmer's guide should appear in future versions. Send all comments, bug reports, patches to "paradise@cenatls.cena.dgac.fr" (Nicolas Courtel). [http://archive.adaic.com/tools/bindings/paradise/] Ada Binding to XModem and Kermit Network Protocols This is a set of Ada packages that implement the file transfer protocols only (for X_Modem and Kermit protocols). The documentation is complete and the implementation encourages reuse of this tool in a variety of ways.hpot [http://archive.adaic.com/tools/bindings/xmodem-kermit/] X-Windows - Motif These are the BCA/STARS Motif Ada bindings. Motif is an X-Windows based toolkit for user interface development. The BCA Motif Ada bindings are a binding to (not an implementation of): - the Motif widget (user interface object) set, and - a subset of the Motif functions You must have the Motif object code libraries to use this software. The bindings were developed using Motif version 1.0.1 and have not been tested under 1.1. [http://archive.adaic.com/tools/bindings/MOTIF/] X-Windows - X, Xlib, Xt, Motif This is a complete set of Ada Xlib/Xt/Motif bindings, and a set of examples. The Ada Xlib/Xt/Motif bindings require the existance of the C Xlib/Xt/Motif bindings. (Ie: the include files and the libraries are available). The actual bindings are pure Ada code, produced by tools written in Ada and C, with all the tools etc. in the tar file. The C tools are compiled using your system's Xlib, Xt, and Xm include files, and they use the information found there to produce Ada representation clauses, constants, etc. that exactly match the C representations of the structures, etc. This is how this kit can reliably generate bindings for a range of architectures, regardless of word-size, alignment-rules, etc. These bindings are for X11R4/Motif 1.1, X11R5/Motif 1.2 and DECMotif Extensions. These bindings are meant for DEC Ada 3.0 and later on OSF/1 and OpenVMS. They should work, or be easily modified to work, on many other Ada compilers and platforms. [http://archive.adaic.com/tools/bindings/Xlib-Xt-Xm-bindings/] X-Windows - Ada/X Toolkit This software package provides an Ada programmatic interface to a set of reusable user interface abstractions known as widgets. The software provides the full functionality of the M.I.T X Consortium Version 11 Release 4 X Window System. The software consists of three components: an Ada binding to the Xlib layer, an Ada implementation of the Xt Intrinsics layer, and an Ada widget library. The Ada binding to the Xlib layer upgrades the STARS Foundations Ada Xlib binding, and provides a protocol interface with a set of graphics drawing primitives. The Xt Intrinsics layer provides a policy-free mechanism for creating and managing user interface objects. User interface objects are contained in the widget library, which consists of a small set of commonly used user interface abstractions such as scroll bars and command buttons. This product was developed as part of the Software Technology for Adaptable, Reliable Systems (STARS) program, sponsored by the Advanced Research Projects Agency (ARPA). [http://archive.adaic.com/tools/bindings/X-toolkit/]
The challenges pertaining to the use of Ada and SQL in a well-engineered information system led to the formation of the SQL Ada Module Extension Design Committee (SAME-DC) at the Software Engineering Institute (SEI). The committee developed the SQL Ada Module Extension (SAME) Methodology to support and extend the modular approach to using Ada and SQL in database applications. The language which is used to implement SAME is the SQL Ada Module Description Language, or SAMeDL.
Using the SAME methodology requires that SQL statements be separated from the Ada application code, and encapsulated in separate modules. The SQL statements are not embedded in the Ada packages, thus isolating the Ada application from the DBMS design and implementation.
SAMeDL is designed to facilitate the construction of Ada database applications that use the SAME methodology.
[http://archive.adaic.com/tools/bindings/SAMeDL/]
TCP/IP - Secure File Transfer Program (SFTP) The Secure File Transfer Program provides a means of transferring sensitive information from one computer system to another. This system implements Transmission Control Protocol (TCP) and conforms to RFC:793. TCP provides a reliable communication between pairs of processes in logically distinct hosts on networks and sets of interconnected networks. The TCP resides in the transport layer of the DoD Internet Model. The system encapsulates messages received from the utility layer protocols, which reside directly above, and passes the packet to the Internet layer (communicates with the Internet Protocol (IP)). The TCP supports the following functions: connection-oriented, reliable data transfer, ordered data transfer delivery, full-duplex, and flow control. This product was developed as part of the Software Technology for Adaptable, Reliable Systems (STARS) program, sponsored by the Advanced Research Projects Agency (ARPA). [http://archive.adaic.com/tools/SFTP/] Transportable Applications Enviornment (TAE) The Transportable Applications Environment (TAE) Project is a state-of-the-art user interface development and management system, that provides services and tools for developing and managing graphically-oriented user interfaces, as well as providing common application executive services. The main component of TAE Plus is a WYSIWYG user interface designer's Workbench that allows an application developer to interactively construct a graphical user interface (GUI) by arranging and manipulating TAE Plus "interaction objects". These interaction objects include both user entry items (e.g., radio buttons, text keyin, icon buttons) and real-time dynamic data objects (e.g., dials, sliders, gauges, and discrete picture sequences). The Workbench also provides the capability to dynamically define "connections" between interaction objects, as well as to rehearse the designed GUI dialogue. The TAE Plus Workbench is a tool for building user interfaces. It is designed for both non-programmers and programmers. Knowledge of OSF/Motif or the X Window System is not necessary. New TAE Plus users quickly master the intuitive operation of the Workbench and can build working interfaces in a matter of hours - often without consulting manuals. As an aid to bridging the gap between the development and runtime environments, the Workbench provides the option of generating a skeleton source code program (in C, ANSI C, C++, and Ada) which fully displays and manages the designed GUI. This Workbench-generated code includes the calls to the TAE Plus runtime services and the Window Programming Tools (WPTs). The separation of the user interface from the application code allows changes to be made easily to an application's GUI without recompiling or relinking the software, and also hides the complexities of the underlying X and Motif windowing services from the application. [http://groucho.gsfc.nasa.gov/Code_520/Code_522/Projects/TAE/Bulletin/TAE_Bulletin3.htm] Unix - Paradise Paradise is a set of Ada packages intended to provide an interface to the Unix operating system, and more specifically to the communication routines, that are accessed via file descriptors. It lets the Ada programmer use files, pipes, and sockets, as well as signals, error codes, environment variables, etc., using an interface that looks as much as possible like the C interface. Paradise supports multi-tasking: any input or output is blocking for the calling task only, and not for the entire process. Paradise is intended to be system-independant and compiler-independant; so far, it works on four environments: - SunOS 4.1 (Sparc) and SunAda (Verdix 6.1) compiler - SunOS 4.1 (Sparc) and TeleSoft 4.1.1 compiler - HP-UX (HP9000/700) and HP-Ada (Alsys) compiler - HP-UX (HP9000/700) and Verdix 6.3d compiler It is known not to work well on SunOS/Alsys, because of problems on signal handlers; For people who would like to port it to other environments, information on portability is displayed inside the code. A programmer's guide should appear in future versions. Send all comments, bug reports, patches to "paradise@cenatls.cena.dgac.fr" (Nicolas Courtel). [http://archive.adaic.com/tools/bindings/paradise/] Ada Binding to XModem and Kermit Network Protocols This is a set of Ada packages that implement the file transfer protocols only (for X_Modem and Kermit protocols). The documentation is complete and the implementation encourages reuse of this tool in a variety of ways.hpot [http://archive.adaic.com/tools/bindings/xmodem-kermit/] X-Windows - Motif These are the BCA/STARS Motif Ada bindings. Motif is an X-Windows based toolkit for user interface development. The BCA Motif Ada bindings are a binding to (not an implementation of): - the Motif widget (user interface object) set, and - a subset of the Motif functions You must have the Motif object code libraries to use this software. The bindings were developed using Motif version 1.0.1 and have not been tested under 1.1. [http://archive.adaic.com/tools/bindings/MOTIF/] X-Windows - X, Xlib, Xt, Motif This is a complete set of Ada Xlib/Xt/Motif bindings, and a set of examples. The Ada Xlib/Xt/Motif bindings require the existance of the C Xlib/Xt/Motif bindings. (Ie: the include files and the libraries are available). The actual bindings are pure Ada code, produced by tools written in Ada and C, with all the tools etc. in the tar file. The C tools are compiled using your system's Xlib, Xt, and Xm include files, and they use the information found there to produce Ada representation clauses, constants, etc. that exactly match the C representations of the structures, etc. This is how this kit can reliably generate bindings for a range of architectures, regardless of word-size, alignment-rules, etc. These bindings are for X11R4/Motif 1.1, X11R5/Motif 1.2 and DECMotif Extensions. These bindings are meant for DEC Ada 3.0 and later on OSF/1 and OpenVMS. They should work, or be easily modified to work, on many other Ada compilers and platforms. [http://archive.adaic.com/tools/bindings/Xlib-Xt-Xm-bindings/] X-Windows - Ada/X Toolkit This software package provides an Ada programmatic interface to a set of reusable user interface abstractions known as widgets. The software provides the full functionality of the M.I.T X Consortium Version 11 Release 4 X Window System. The software consists of three components: an Ada binding to the Xlib layer, an Ada implementation of the Xt Intrinsics layer, and an Ada widget library. The Ada binding to the Xlib layer upgrades the STARS Foundations Ada Xlib binding, and provides a protocol interface with a set of graphics drawing primitives. The Xt Intrinsics layer provides a policy-free mechanism for creating and managing user interface objects. User interface objects are contained in the widget library, which consists of a small set of commonly used user interface abstractions such as scroll bars and command buttons. This product was developed as part of the Software Technology for Adaptable, Reliable Systems (STARS) program, sponsored by the Advanced Research Projects Agency (ARPA). [http://archive.adaic.com/tools/bindings/X-toolkit/]
[http://archive.adaic.com/tools/SFTP/]
Transportable Applications Enviornment (TAE) The Transportable Applications Environment (TAE) Project is a state-of-the-art user interface development and management system, that provides services and tools for developing and managing graphically-oriented user interfaces, as well as providing common application executive services. The main component of TAE Plus is a WYSIWYG user interface designer's Workbench that allows an application developer to interactively construct a graphical user interface (GUI) by arranging and manipulating TAE Plus "interaction objects". These interaction objects include both user entry items (e.g., radio buttons, text keyin, icon buttons) and real-time dynamic data objects (e.g., dials, sliders, gauges, and discrete picture sequences). The Workbench also provides the capability to dynamically define "connections" between interaction objects, as well as to rehearse the designed GUI dialogue. The TAE Plus Workbench is a tool for building user interfaces. It is designed for both non-programmers and programmers. Knowledge of OSF/Motif or the X Window System is not necessary. New TAE Plus users quickly master the intuitive operation of the Workbench and can build working interfaces in a matter of hours - often without consulting manuals. As an aid to bridging the gap between the development and runtime environments, the Workbench provides the option of generating a skeleton source code program (in C, ANSI C, C++, and Ada) which fully displays and manages the designed GUI. This Workbench-generated code includes the calls to the TAE Plus runtime services and the Window Programming Tools (WPTs). The separation of the user interface from the application code allows changes to be made easily to an application's GUI without recompiling or relinking the software, and also hides the complexities of the underlying X and Motif windowing services from the application. [http://groucho.gsfc.nasa.gov/Code_520/Code_522/Projects/TAE/Bulletin/TAE_Bulletin3.htm] Unix - Paradise Paradise is a set of Ada packages intended to provide an interface to the Unix operating system, and more specifically to the communication routines, that are accessed via file descriptors. It lets the Ada programmer use files, pipes, and sockets, as well as signals, error codes, environment variables, etc., using an interface that looks as much as possible like the C interface. Paradise supports multi-tasking: any input or output is blocking for the calling task only, and not for the entire process. Paradise is intended to be system-independant and compiler-independant; so far, it works on four environments: - SunOS 4.1 (Sparc) and SunAda (Verdix 6.1) compiler - SunOS 4.1 (Sparc) and TeleSoft 4.1.1 compiler - HP-UX (HP9000/700) and HP-Ada (Alsys) compiler - HP-UX (HP9000/700) and Verdix 6.3d compiler It is known not to work well on SunOS/Alsys, because of problems on signal handlers; For people who would like to port it to other environments, information on portability is displayed inside the code. A programmer's guide should appear in future versions. Send all comments, bug reports, patches to "paradise@cenatls.cena.dgac.fr" (Nicolas Courtel). [http://archive.adaic.com/tools/bindings/paradise/] Ada Binding to XModem and Kermit Network Protocols This is a set of Ada packages that implement the file transfer protocols only (for X_Modem and Kermit protocols). The documentation is complete and the implementation encourages reuse of this tool in a variety of ways.hpot [http://archive.adaic.com/tools/bindings/xmodem-kermit/] X-Windows - Motif These are the BCA/STARS Motif Ada bindings. Motif is an X-Windows based toolkit for user interface development. The BCA Motif Ada bindings are a binding to (not an implementation of): - the Motif widget (user interface object) set, and - a subset of the Motif functions You must have the Motif object code libraries to use this software. The bindings were developed using Motif version 1.0.1 and have not been tested under 1.1. [http://archive.adaic.com/tools/bindings/MOTIF/] X-Windows - X, Xlib, Xt, Motif This is a complete set of Ada Xlib/Xt/Motif bindings, and a set of examples. The Ada Xlib/Xt/Motif bindings require the existance of the C Xlib/Xt/Motif bindings. (Ie: the include files and the libraries are available). The actual bindings are pure Ada code, produced by tools written in Ada and C, with all the tools etc. in the tar file. The C tools are compiled using your system's Xlib, Xt, and Xm include files, and they use the information found there to produce Ada representation clauses, constants, etc. that exactly match the C representations of the structures, etc. This is how this kit can reliably generate bindings for a range of architectures, regardless of word-size, alignment-rules, etc. These bindings are for X11R4/Motif 1.1, X11R5/Motif 1.2 and DECMotif Extensions. These bindings are meant for DEC Ada 3.0 and later on OSF/1 and OpenVMS. They should work, or be easily modified to work, on many other Ada compilers and platforms. [http://archive.adaic.com/tools/bindings/Xlib-Xt-Xm-bindings/] X-Windows - Ada/X Toolkit This software package provides an Ada programmatic interface to a set of reusable user interface abstractions known as widgets. The software provides the full functionality of the M.I.T X Consortium Version 11 Release 4 X Window System. The software consists of three components: an Ada binding to the Xlib layer, an Ada implementation of the Xt Intrinsics layer, and an Ada widget library. The Ada binding to the Xlib layer upgrades the STARS Foundations Ada Xlib binding, and provides a protocol interface with a set of graphics drawing primitives. The Xt Intrinsics layer provides a policy-free mechanism for creating and managing user interface objects. User interface objects are contained in the widget library, which consists of a small set of commonly used user interface abstractions such as scroll bars and command buttons. This product was developed as part of the Software Technology for Adaptable, Reliable Systems (STARS) program, sponsored by the Advanced Research Projects Agency (ARPA). [http://archive.adaic.com/tools/bindings/X-toolkit/]
The main component of TAE Plus is a WYSIWYG user interface designer's Workbench that allows an application developer to interactively construct a graphical user interface (GUI) by arranging and manipulating TAE Plus "interaction objects". These interaction objects include both user entry items (e.g., radio buttons, text keyin, icon buttons) and real-time dynamic data objects (e.g., dials, sliders, gauges, and discrete picture sequences). The Workbench also provides the capability to dynamically define "connections" between interaction objects, as well as to rehearse the designed GUI dialogue.
The TAE Plus Workbench is a tool for building user interfaces. It is designed for both non-programmers and programmers. Knowledge of OSF/Motif or the X Window System is not necessary. New TAE Plus users quickly master the intuitive operation of the Workbench and can build working interfaces in a matter of hours - often without consulting manuals. As an aid to bridging the gap between the development and runtime environments, the Workbench provides the option of generating a skeleton source code program (in C, ANSI C, C++, and Ada) which fully displays and manages the designed GUI. This Workbench-generated code includes the calls to the TAE Plus runtime services and the Window Programming Tools (WPTs). The separation of the user interface from the application code allows changes to be made easily to an application's GUI without recompiling or relinking the software, and also hides the complexities of the underlying X and Motif windowing services from the application.
[http://groucho.gsfc.nasa.gov/Code_520/Code_522/Projects/TAE/Bulletin/TAE_Bulletin3.htm]
Unix - Paradise Paradise is a set of Ada packages intended to provide an interface to the Unix operating system, and more specifically to the communication routines, that are accessed via file descriptors. It lets the Ada programmer use files, pipes, and sockets, as well as signals, error codes, environment variables, etc., using an interface that looks as much as possible like the C interface. Paradise supports multi-tasking: any input or output is blocking for the calling task only, and not for the entire process. Paradise is intended to be system-independant and compiler-independant; so far, it works on four environments: - SunOS 4.1 (Sparc) and SunAda (Verdix 6.1) compiler - SunOS 4.1 (Sparc) and TeleSoft 4.1.1 compiler - HP-UX (HP9000/700) and HP-Ada (Alsys) compiler - HP-UX (HP9000/700) and Verdix 6.3d compiler It is known not to work well on SunOS/Alsys, because of problems on signal handlers; For people who would like to port it to other environments, information on portability is displayed inside the code. A programmer's guide should appear in future versions. Send all comments, bug reports, patches to "paradise@cenatls.cena.dgac.fr" (Nicolas Courtel). [http://archive.adaic.com/tools/bindings/paradise/] Ada Binding to XModem and Kermit Network Protocols This is a set of Ada packages that implement the file transfer protocols only (for X_Modem and Kermit protocols). The documentation is complete and the implementation encourages reuse of this tool in a variety of ways.hpot [http://archive.adaic.com/tools/bindings/xmodem-kermit/] X-Windows - Motif These are the BCA/STARS Motif Ada bindings. Motif is an X-Windows based toolkit for user interface development. The BCA Motif Ada bindings are a binding to (not an implementation of): - the Motif widget (user interface object) set, and - a subset of the Motif functions You must have the Motif object code libraries to use this software. The bindings were developed using Motif version 1.0.1 and have not been tested under 1.1. [http://archive.adaic.com/tools/bindings/MOTIF/] X-Windows - X, Xlib, Xt, Motif This is a complete set of Ada Xlib/Xt/Motif bindings, and a set of examples. The Ada Xlib/Xt/Motif bindings require the existance of the C Xlib/Xt/Motif bindings. (Ie: the include files and the libraries are available). The actual bindings are pure Ada code, produced by tools written in Ada and C, with all the tools etc. in the tar file. The C tools are compiled using your system's Xlib, Xt, and Xm include files, and they use the information found there to produce Ada representation clauses, constants, etc. that exactly match the C representations of the structures, etc. This is how this kit can reliably generate bindings for a range of architectures, regardless of word-size, alignment-rules, etc. These bindings are for X11R4/Motif 1.1, X11R5/Motif 1.2 and DECMotif Extensions. These bindings are meant for DEC Ada 3.0 and later on OSF/1 and OpenVMS. They should work, or be easily modified to work, on many other Ada compilers and platforms. [http://archive.adaic.com/tools/bindings/Xlib-Xt-Xm-bindings/] X-Windows - Ada/X Toolkit This software package provides an Ada programmatic interface to a set of reusable user interface abstractions known as widgets. The software provides the full functionality of the M.I.T X Consortium Version 11 Release 4 X Window System. The software consists of three components: an Ada binding to the Xlib layer, an Ada implementation of the Xt Intrinsics layer, and an Ada widget library. The Ada binding to the Xlib layer upgrades the STARS Foundations Ada Xlib binding, and provides a protocol interface with a set of graphics drawing primitives. The Xt Intrinsics layer provides a policy-free mechanism for creating and managing user interface objects. User interface objects are contained in the widget library, which consists of a small set of commonly used user interface abstractions such as scroll bars and command buttons. This product was developed as part of the Software Technology for Adaptable, Reliable Systems (STARS) program, sponsored by the Advanced Research Projects Agency (ARPA). [http://archive.adaic.com/tools/bindings/X-toolkit/]
Paradise supports multi-tasking: any input or output is blocking for the calling task only, and not for the entire process.
Paradise is intended to be system-independant and compiler-independant; so far, it works on four environments:
- SunOS 4.1 (Sparc) and TeleSoft 4.1.1 compiler
- HP-UX (HP9000/700) and HP-Ada (Alsys) compiler
- HP-UX (HP9000/700) and Verdix 6.3d compiler
For people who would like to port it to other environments, information on portability is displayed inside the code. A programmer's guide should appear in future versions.
Send all comments, bug reports, patches to "paradise@cenatls.cena.dgac.fr" (Nicolas Courtel).
[http://archive.adaic.com/tools/bindings/paradise/]
Ada Binding to XModem and Kermit Network Protocols This is a set of Ada packages that implement the file transfer protocols only (for X_Modem and Kermit protocols). The documentation is complete and the implementation encourages reuse of this tool in a variety of ways.hpot [http://archive.adaic.com/tools/bindings/xmodem-kermit/] X-Windows - Motif These are the BCA/STARS Motif Ada bindings. Motif is an X-Windows based toolkit for user interface development. The BCA Motif Ada bindings are a binding to (not an implementation of): - the Motif widget (user interface object) set, and - a subset of the Motif functions You must have the Motif object code libraries to use this software. The bindings were developed using Motif version 1.0.1 and have not been tested under 1.1. [http://archive.adaic.com/tools/bindings/MOTIF/] X-Windows - X, Xlib, Xt, Motif This is a complete set of Ada Xlib/Xt/Motif bindings, and a set of examples. The Ada Xlib/Xt/Motif bindings require the existance of the C Xlib/Xt/Motif bindings. (Ie: the include files and the libraries are available). The actual bindings are pure Ada code, produced by tools written in Ada and C, with all the tools etc. in the tar file. The C tools are compiled using your system's Xlib, Xt, and Xm include files, and they use the information found there to produce Ada representation clauses, constants, etc. that exactly match the C representations of the structures, etc. This is how this kit can reliably generate bindings for a range of architectures, regardless of word-size, alignment-rules, etc. These bindings are for X11R4/Motif 1.1, X11R5/Motif 1.2 and DECMotif Extensions. These bindings are meant for DEC Ada 3.0 and later on OSF/1 and OpenVMS. They should work, or be easily modified to work, on many other Ada compilers and platforms. [http://archive.adaic.com/tools/bindings/Xlib-Xt-Xm-bindings/] X-Windows - Ada/X Toolkit This software package provides an Ada programmatic interface to a set of reusable user interface abstractions known as widgets. The software provides the full functionality of the M.I.T X Consortium Version 11 Release 4 X Window System. The software consists of three components: an Ada binding to the Xlib layer, an Ada implementation of the Xt Intrinsics layer, and an Ada widget library. The Ada binding to the Xlib layer upgrades the STARS Foundations Ada Xlib binding, and provides a protocol interface with a set of graphics drawing primitives. The Xt Intrinsics layer provides a policy-free mechanism for creating and managing user interface objects. User interface objects are contained in the widget library, which consists of a small set of commonly used user interface abstractions such as scroll bars and command buttons. This product was developed as part of the Software Technology for Adaptable, Reliable Systems (STARS) program, sponsored by the Advanced Research Projects Agency (ARPA). [http://archive.adaic.com/tools/bindings/X-toolkit/]
The documentation is complete and the implementation encourages reuse of this tool in a variety of ways.hpot
[http://archive.adaic.com/tools/bindings/xmodem-kermit/]
X-Windows - Motif These are the BCA/STARS Motif Ada bindings. Motif is an X-Windows based toolkit for user interface development. The BCA Motif Ada bindings are a binding to (not an implementation of): - the Motif widget (user interface object) set, and - a subset of the Motif functions You must have the Motif object code libraries to use this software. The bindings were developed using Motif version 1.0.1 and have not been tested under 1.1. [http://archive.adaic.com/tools/bindings/MOTIF/] X-Windows - X, Xlib, Xt, Motif This is a complete set of Ada Xlib/Xt/Motif bindings, and a set of examples. The Ada Xlib/Xt/Motif bindings require the existance of the C Xlib/Xt/Motif bindings. (Ie: the include files and the libraries are available). The actual bindings are pure Ada code, produced by tools written in Ada and C, with all the tools etc. in the tar file. The C tools are compiled using your system's Xlib, Xt, and Xm include files, and they use the information found there to produce Ada representation clauses, constants, etc. that exactly match the C representations of the structures, etc. This is how this kit can reliably generate bindings for a range of architectures, regardless of word-size, alignment-rules, etc. These bindings are for X11R4/Motif 1.1, X11R5/Motif 1.2 and DECMotif Extensions. These bindings are meant for DEC Ada 3.0 and later on OSF/1 and OpenVMS. They should work, or be easily modified to work, on many other Ada compilers and platforms. [http://archive.adaic.com/tools/bindings/Xlib-Xt-Xm-bindings/] X-Windows - Ada/X Toolkit This software package provides an Ada programmatic interface to a set of reusable user interface abstractions known as widgets. The software provides the full functionality of the M.I.T X Consortium Version 11 Release 4 X Window System. The software consists of three components: an Ada binding to the Xlib layer, an Ada implementation of the Xt Intrinsics layer, and an Ada widget library. The Ada binding to the Xlib layer upgrades the STARS Foundations Ada Xlib binding, and provides a protocol interface with a set of graphics drawing primitives. The Xt Intrinsics layer provides a policy-free mechanism for creating and managing user interface objects. User interface objects are contained in the widget library, which consists of a small set of commonly used user interface abstractions such as scroll bars and command buttons. This product was developed as part of the Software Technology for Adaptable, Reliable Systems (STARS) program, sponsored by the Advanced Research Projects Agency (ARPA). [http://archive.adaic.com/tools/bindings/X-toolkit/]
- the Motif widget (user interface object) set, and
- a subset of the Motif functions
You must have the Motif object code libraries to use this software. The bindings were developed using Motif version 1.0.1 and have not been tested under 1.1.
[http://archive.adaic.com/tools/bindings/MOTIF/]
X-Windows - X, Xlib, Xt, Motif This is a complete set of Ada Xlib/Xt/Motif bindings, and a set of examples. The Ada Xlib/Xt/Motif bindings require the existance of the C Xlib/Xt/Motif bindings. (Ie: the include files and the libraries are available). The actual bindings are pure Ada code, produced by tools written in Ada and C, with all the tools etc. in the tar file. The C tools are compiled using your system's Xlib, Xt, and Xm include files, and they use the information found there to produce Ada representation clauses, constants, etc. that exactly match the C representations of the structures, etc. This is how this kit can reliably generate bindings for a range of architectures, regardless of word-size, alignment-rules, etc. These bindings are for X11R4/Motif 1.1, X11R5/Motif 1.2 and DECMotif Extensions. These bindings are meant for DEC Ada 3.0 and later on OSF/1 and OpenVMS. They should work, or be easily modified to work, on many other Ada compilers and platforms. [http://archive.adaic.com/tools/bindings/Xlib-Xt-Xm-bindings/] X-Windows - Ada/X Toolkit This software package provides an Ada programmatic interface to a set of reusable user interface abstractions known as widgets. The software provides the full functionality of the M.I.T X Consortium Version 11 Release 4 X Window System. The software consists of three components: an Ada binding to the Xlib layer, an Ada implementation of the Xt Intrinsics layer, and an Ada widget library. The Ada binding to the Xlib layer upgrades the STARS Foundations Ada Xlib binding, and provides a protocol interface with a set of graphics drawing primitives. The Xt Intrinsics layer provides a policy-free mechanism for creating and managing user interface objects. User interface objects are contained in the widget library, which consists of a small set of commonly used user interface abstractions such as scroll bars and command buttons. This product was developed as part of the Software Technology for Adaptable, Reliable Systems (STARS) program, sponsored by the Advanced Research Projects Agency (ARPA). [http://archive.adaic.com/tools/bindings/X-toolkit/]
The Ada Xlib/Xt/Motif bindings require the existance of the C Xlib/Xt/Motif bindings. (Ie: the include files and the libraries are available).
The actual bindings are pure Ada code, produced by tools written in Ada and C, with all the tools etc. in the tar file.
The C tools are compiled using your system's Xlib, Xt, and Xm include files, and they use the information found there to produce Ada representation clauses, constants, etc. that exactly match the C representations of the structures, etc. This is how this kit can reliably generate bindings for a range of architectures, regardless of word-size, alignment-rules, etc.
These bindings are for X11R4/Motif 1.1, X11R5/Motif 1.2 and DECMotif Extensions.
These bindings are meant for DEC Ada 3.0 and later on OSF/1 and OpenVMS. They should work, or be easily modified to work, on many other Ada compilers and platforms.
[http://archive.adaic.com/tools/bindings/Xlib-Xt-Xm-bindings/]
X-Windows - Ada/X Toolkit This software package provides an Ada programmatic interface to a set of reusable user interface abstractions known as widgets. The software provides the full functionality of the M.I.T X Consortium Version 11 Release 4 X Window System. The software consists of three components: an Ada binding to the Xlib layer, an Ada implementation of the Xt Intrinsics layer, and an Ada widget library. The Ada binding to the Xlib layer upgrades the STARS Foundations Ada Xlib binding, and provides a protocol interface with a set of graphics drawing primitives. The Xt Intrinsics layer provides a policy-free mechanism for creating and managing user interface objects. User interface objects are contained in the widget library, which consists of a small set of commonly used user interface abstractions such as scroll bars and command buttons. This product was developed as part of the Software Technology for Adaptable, Reliable Systems (STARS) program, sponsored by the Advanced Research Projects Agency (ARPA). [http://archive.adaic.com/tools/bindings/X-toolkit/]
The software consists of three components: an Ada binding to the Xlib layer, an Ada implementation of the Xt Intrinsics layer, and an Ada widget library. The Ada binding to the Xlib layer upgrades the STARS Foundations Ada Xlib binding, and provides a protocol interface with a set of graphics drawing primitives. The Xt Intrinsics layer provides a policy-free mechanism for creating and managing user interface objects. User interface objects are contained in the widget library, which consists of a small set of commonly used user interface abstractions such as scroll bars and command buttons.
[http://archive.adaic.com/tools/bindings/X-toolkit/]
Previous Section Table of Contents Next Section Keyword Search