comp.lang.ada
 help / color / mirror / Atom feed
From: Ludovic Brenta <ludovic@ludovic-brenta.org>
Subject: Re: ASIS?
Date: Fri, 26 Oct 2007 12:09:27 +0200
Date: 2007-10-26T12:09:27+02:00	[thread overview]
Message-ID: <877ilafaqw.fsf@ludovic-brenta.org> (raw)
In-Reply-To: 1193392044.600378.120160@i13g2000prf.googlegroups.com

parthaspanda22@gmail.com writes:
> If one were to need an API to fulfill all requirements by a
> Debugger, Source Browser and a Syntax-aware editor from the IDE,
> then would ASIS be it?

The debugger does not need all the capabilities of ASIS; only line
numbers and type descriptions.  That's what GDB gets from the object
files generated by GNAT with -g.  The editor does not need all the
capabilities of ASIS.  For example, emacs, GPS and Eclipse all do
syntax highlighting without ASIS.

The source browser is probably the one component that would benefit
from ASIS the most; however an alternative is gnatfind which uses the
.ali files generated by GNAT for cross-references.  GPS uses gnatfind,
not ASIS, for this functionality.  In contrast, adabrowse generates an
HTML description of a program, with hyperlinks, using ASIS.

However, the answer to your question is probably yes: ASIS would
provide all the information needed, and more, to the debugger, browser
and editor, in a single interface.

> Can a compilation environment just provide an ASIS interface for
> third-party debuggers, source browsers and syntax-aware editors to
> plug-in and work well?

Yes but the word "just" is often the sign of a mistake and rings an
alarm bell in my head whenever I see or hear it :) In this case, it
hides these problems:

1) The complexity of providing the ASIS interface and that of using it
   from all tools.

2) The ASIS interface can only be provided on legal, compiling program
   text.  Any program with compile-time errors in it would be
   impossible to browse (using the source browser) and the editor
   would have to be particularly smart in deciding when to call the
   compiler to regerenate the ASIS information.

3) In the worst of cases, regenerating the ASIS data can cause massive
   recompilations and be too slow for interactive use.

> Is a C interface available?

Not that I know.  Why do you ask?

-- 
Ludovic Brenta.



  reply	other threads:[~2007-10-26 10:09 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-10-26  9:47 ASIS? parthaspanda22
2007-10-26 10:09 ` Ludovic Brenta [this message]
2007-10-26 11:58   ` ASIS? parthaspanda22
2007-10-26 12:10     ` ASIS? parthaspanda22
2007-10-26 12:29   ` ASIS? Niklas Holsti
2007-10-26 13:00     ` ASIS? parthaspanda22
2007-10-26 13:43       ` ASIS? Niklas Holsti
2007-10-26 14:40         ` ASIS? parthaspanda22
2007-10-27 12:21           ` ASIS? Niklas Holsti
2007-10-27  0:15     ` ASIS? Randy Brukardt
replies disabled

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