[Up] [SIGAda] [ACM]

ASISWG Documents and Artifacts


ASIS Specification Documents and Software

ASIS, Version 2.0

The version of ASIS for Ada 95 is known as ASIS 95. ASISWG/ASISRG has evolved the ASIS Specification (616 KBytes) through resolution of technical issues and editorial comments during its development.


ASIS Tutorials

There are several tutorial resources for ASIS. These include the following:

Links to Other Useful ASIS Tutorial Resources

There is a wealth of other useful ASIS tutorial information available. Such information includes vendor tutorials at conferences, conference presentations, vendor tutorials on web sites, and even publically available ASIS applications with source code. These sites provide a different perspective that is valuable to one learning ASIS. These include:

ASIS Secondary Library

Thanks to Sergey Rybin, Dan Cooper, and Steve Blake for the information below related to secondary libraries.

Sergey Rybin defines an ASIS secondary library as a library defining ASIS secondary queries. ASIS secondary queries are simplly some typical combinations of the standard ASIS queries which are of a particular interest or which are often used in a particular ASIS tool. The idea is to encapsulate these combinations of standard ASIS queries in a form similar to the standard ASIS queries and then to use these secondary queries similar to high-level ASIS queries in the code of that tool.

For example, in ASIS, you have the Corresponding_Name_Definition query defined for simple names only. But in your tool, you may need to know what is the meaning of a given simple or expanded name. And you may define your own "query" applicable to An_Identifier and A_Selected_Component elements. This query then will analyze its argument and, depending on the argument kind, it uses this or that method for defining the "meaning" of the argument.

Defining a tool-specific ASIS secondary library is a part of the first step of an ASIS tool design and implementation.

Steve Blake also adds that the use of secondary layer queries greatly simplifies development using ASIS. Most tools have common needs such as outputting an expression or declaration name in fully qualified form. Steve found that most tools can use a relatively small pool of common secondary queries and then define several specific secondary operations for their own special purpose. So, it is not such a daunting task as it might first seem. Steve has a sample of secondary libraries that he used when he was at Aonix; most of these queries should work with GNAT ASIS, too.

C. Dan Cooper says that Steve's observations match his own experience, too. But just to underscore what Sergey said: the significant insight is that, unlike Steve's and my experiences, which were largely ad-hoc, you should deliberately plan an up-front effort to design the high-level queries you expect to need in your application. The importance of this step stems not from the difficulty, but rather from the benefits. These include:

and more. Having thus defined the queries you would like to have, you can then implement them using the available ASIS interface. This is a very different experience from the ad-hoc approach, wherein you instead react to observed mismatches in what you need versus what ASIS provides.


Highlights and Minutes of Past Meetings

25-26 March 1997 -- Phoenix, AZ

Minutes of the ASISWG/ASISRG meeting of 25-26 March 1997 are now available in text form. Highlights of this meeting are also available in text form.

3 December 1996 -- Philadelphia, PA

Minutes of the ASISWG/ASISRG meeting of 3 December 1996 are now available in text form and in PostScript form. Highlights of this meeting are also available in text form and in PostScript form.

10 June 1996 -- Montreux, Switzerland

Minutes of the ASISWG/ASISRG meeting of 10 June 1996 are now available in text form, in PostScript form, and as a Microsoft Word document. Highlights of this meeting are also available in text form, in PostScript form, and as a Microsoft Word document,

11-12 March 1996 -- Ft. Lauderdale, FL

Minutes of the ASISWG meeting of 11-12 March 1996 are now available in text form, as a Microsoft Word document, and in PostScript form.

2-3 November 1995 -- San Diego, CA

Minutes of the ASISWG meeting of 2-3 November 1995 are now available in text form and in PostScript form. Highlights of this meeting are also available in text form and in PostScript form.

4 October 1995 -- ASIS Workshop at Ada Europe'95

The planned ASIS Workshop at the Ada in Europe 95 conference (held 2-6 October), actually took place on Wednesday, October 4. Minutes of the ASIS Workshop are now available.

26-27 June 1996 -- McLean, VA

Minutes of the ASISWG meeting of 26-27 June 1995 are now available in text form. Highlights of this meeting are also available in text form and in PostScript form.

6-8 March 1995 -- Ft. Lauderdale, FL

Minutes of the ASISWG meeting of 6-8 March 1995 are now available in text form and in PostScript form. Highlights of this meeting are also available in text form and in PostScript form.


[Up] [SIGAda] [ACM]

Last update 10 April 2002. Questions, comments to Clyde Roby (CRoby@IDA.Org)