A-A-P logo     



tools useful for A-A-P

The intention for A-A-P is to use existing tools as much as possible. To find out which tools can be used this overview has been compiled.
    Some tools cannot be used directly, but function as an example or can be invoked by A-A-P (e.g., commercial tools and programs which are not portable). Unless noted otherwise, tools are open-source.
    If you find a tool that would be useful for A-A-P but is not listed here, or when information is incorrect, send a message to Bram AT
    Note: this list is not intended to be complete. Information that is irrelevant for A-A-P is omitted.

Script languages       Build       Install       Issue Tracking       Version control       Browse       IDEs       Various

Browsing files

To be able to find your way in a project, you need to know where functions are defined, where variables are used and where a class is documented. To make this work fast, a database of identifiers needs to be created.

Tools to explore a file system or the internet are not included here. Tools to manually add files to a project are considered part of an IDE.

The browser of A-A-P has these demands:

  • Works for every language
  • Is portable to many systems
  • Works fast
  • Uses multiple database files
  • Does not create huge files

It might be that no existing tools is found that fulfills all these requirements. In that case the listed tools can be used as an example or perhaps as a starting point.

GNU ID-utils
Works for every language. Doesn't include info about the context of words. Tends to create huge database files.
Exists in several versions. Exuberant Ctags is open-source and handles many languages, therefore it is the most interesting candidate, also because it includes info about where a word is used. Only specifies where a word is defined, not where it is used. Handles line inserts/deletions by using a search pattern.
The code analyzing should be useful for A-A-P.
Mainly for C and C++ code. Both definitions and references to a word. Has a terminal interface. Can also be integrated in editors (support present in Emacs and Vim). Open source (although there used to be a commercial version).
Code browser like cscope. Currently for C code only.
Does not appear to be more useful than Cscope.
C program cross referencing and documentation. Not for C++.
Appears to be of limited use for A-A-P.
Similar to ctags, with a few different languages supported.
Perhaps some language-specific parsing can be used for A-A-P.
Lists functions and function calls for C and C++ in various ways.
For analyzing and browsing C, C++, Java, Fortran and Ada. Commercial. Includes an IDE. Comprehensive program.
Can be used for ideas.
Produces a function call graph for C programs. Exists in several versions.
Indexing and query system for Unix. Looks more like a search engine. Does not appear to understand context of words. Produces multiple files in each directory. There is also a version for use on the web: WebGlimpse.
Should provide ideas how to maintain the database.
Emacs code browser. Appears to be of limited use, since it is GNU-Emacs-specific.
Emacs O-O class browser. Works for many languages. Implemented in C++, Java and Python; or is it elisp?
Perhaps the way code is analyzed could be interesting.
Cross referencer for use in a web browser. Unclear how useful this is.
  The A-A-P pages:
Zimbu award
     Recipe examples
     Aap manual
     Agide tutorial
     Aap version log
     Agide version log
     ported apps
maillists and chat
plan and tasks
     SourceForge pages
     Aap todo list
     Agide todo list
     use cases
     design decisions
tools overview
     script languages
     build tools
     Install tools
     issue tracking
     version control
     browse tools
     various tools

Zimbu! - browse the Keyword Map of
funded by:


Send comments on this page to Webmaster AT            Hosted by SourceForge Logo            Also known as