comp.lang.ada
 help / color / mirror / Atom feed
From: "Samuel T. Harris" <samuel_t_harris@Raytheon.com>
Subject: Re: Ada grammar
Date: 2000/05/12
Date: 2000-05-12T00:00:00+00:00	[thread overview]
Message-ID: <391C4223.2391F9ED@Raytheon.com> (raw)
In-Reply-To: uln1femmw.fsf@infomatch.com

Ray Blaak wrote:
> 
> Geoff Bull <gbull@acenet.com.au> writes:
> > I don't see how you can extend this experience to reject the use
> > of ASIS out of hand. ASIS was specifically designed for tools
> > such as the originally poster had in mind.
> 
> It is not that I am rejecting ASIS so much as defending the position that
> writing a custom parser is not unreasonable, especially for a tool that
> already has parse engines for other languages and wants to add a new language
> parser with minimal impact.
> 
> I actually like the idea of ASIS. My knowledge of it is about 8 years out of
> date though. Some questions:
> 
> 01. What is the interface to it? I was understanding it was a collection of
> Ada packages. Are there foreign-language bindings to it? I am guessing, for
> example that the original poster's reverse engineering tool is not written in
> Ada.

The interface is a collection of packages which provide semantic
queries concerning a particular element of code as well as traversal
routines to move up and down the semantic tree and iterators to
cover all elements in a tree.

Interfacing ASIS to foreign languages is the same problem as interfacing
any Ada package to a foreign language. You can either process the data
in Ada and provide the expected data to the reverse engineering tool
or wrap up ASIS with another layer providing exports for the needed
queries. I believe the first option is usually easier.

> 
> 02. Is perfect source reconstruction possible? At the Tri-Ada'92 session I
> attended, this was still an eventual goal.

There are ASIS queries to get the original text file from which
the unit was compiled, the span of text an particular semantic
element within that text file, and the actual text of that element.
These queries are optional and their is a test to see if these
facilities are supported by a particular ASIS implementation.
White space and blank lines can be inferred from the holes.
I don't know about spaces on the end of a line.

> 
> --
> Cheers,                                        The Rhythm is around me,
>                                                The Rhythm has control.
> Ray Blaak                                      The Rhythm is inside me,
> blaak@infomatch.com                            The Rhythm has my soul.

DISCLAIMER: My replies above are limited to my extensive
experience with ASIS for Ada 83 as implemented by Rational Apex.
I have looked at GNAT's implementation of ASIS for Ada 95
and see that there are some differences but most of what I have
seen is nearly identical to what I am used to.

-- 
Samuel T. Harris, Principal Engineer
Raytheon, Aerospace Engineering Services
"If you can make it, We can fake it!"




  reply	other threads:[~2000-05-12  0:00 UTC|newest]

Thread overview: 46+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2000-05-05  0:00 Ada grammar bradders
2000-05-05  0:00 ` Ira D. Baxter
2000-05-05  0:00 ` Robert Dewar
2000-05-08  0:00   ` bradders
2000-05-08  0:00     ` David C. Hoos, Sr.
2000-05-08  0:00       ` Ted Dennison
2000-05-08  0:00         ` Tucker Taft
2000-05-08  0:00     ` Ted Dennison
2000-05-08  0:00     ` Robert Dewar
2000-05-08  0:00       ` Samuel T. Harris
2000-05-08  0:00       ` Ted Dennison
2000-05-08  0:00         ` Robert Dewar
2000-05-08  0:00           ` Ted Dennison
2000-05-09  0:00         ` Pascal Obry
2000-05-09  0:00           ` Samuel T. Harris
2000-05-08  0:00       ` baysinger
2000-05-09  0:00     ` Ray Blaak
2000-05-10  0:00       ` Ira D. Baxter
2000-05-11  0:00       ` Geoff Bull
2000-05-10  0:00         ` Ken Garlington
2000-05-11  0:00           ` dale
2000-05-11  0:00             ` Ken Garlington
2000-05-13  0:00           ` Robert Dewar
2000-05-11  0:00         ` Ray Blaak
2000-05-11  0:00           ` Ted Dennison
2000-05-13  0:00             ` Robert Dewar
2000-05-12  0:00           ` Geoff Bull
2000-05-12  0:00             ` Ray Blaak
2000-05-12  0:00               ` Samuel T. Harris [this message]
2000-05-12  0:00             ` Robert A Duff
2000-05-13  0:00               ` Robert Dewar
2000-05-30  0:00                 ` bradders
2000-05-30  0:00                   ` Robert A Duff
2000-05-05  0:00 ` tmoran
2000-05-05  0:00 ` Gautier
2000-05-08  0:00 ` Tucker Taft
  -- strict thread matches above, loose matches on Subject: below --
1999-01-07  0:00 ADA grammar JamesO
1999-01-08  0:00 ` Tucker Taft
1999-01-08  0:00   ` Tucker Taft
1999-01-08  0:00     ` JamesO
1999-01-11  0:00     ` Tom Moran
1991-06-10 14:30 Orsi Jean-Christophe
1990-12-14 20:08 Ada grammar sivesh pradhaan
1990-09-06 21:03 ada grammar gene
1990-07-05 16:26 Ada Grammar Rindert Schutten
1988-02-04 19:57 ADA grammar Joe Gallagher
replies disabled

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox