# APEX

Here's the first couple of paragraphs from the manual, to give you a teaser of what apeX is all about:

Welcome to apeX! apeX is a free development tool intended to help increase a developer's productivity. In particular, apeX tries to address the following problems:

    	How do you help developers read and understand large programs?
    	How do you make it easier for developers to write new code,
    		reusing older  code as appropriate?
    	How do you document code so that the documentation does not
    		clutter the code, yet is readily available when needed?

To address these problems, apeX is organized into two main functional units, the Navigator and the Object-Linking Editor. The Navigator allows users to graphically browse through the call structure of a program, including both calls to and from a particular function. The Navigator is tightly integrated with the editor, so that at any point the user can easily view the code of a particular function (when available, of course!).

The Editor is a standard full-featured Openwindows texteditor, augmented with Object-Linking capabilities. Technically, this means that a user can create, view, and execute links between two arbitrary sections of text in two arbitrary files. At the simplest level, this allows users to attach more detailed comments to source code. Thus, source code can be extensively documented without excess clutter.

Since link descriptions can be passed to a shell and executed, users can attach virtually anything as documentation--audio comments, technical papers, even movies animating the algorithms used! More importantly, these attachments are available at click of a mouse button from the source code.

Two other tools are included within the apeX program itself: a shell with an built-in version-control interface and a scratch pad, for jotting to-do-lists and other notes.

This release of apeX is known to work on Sun SparcStations running Openwin3.0. Sun binaries are included in the bin directory, so you will not have to compile anything to use apeX.

If you wish to compile apeX, you will need to get and install the slingshot package. Depending on your system configuration, you may need to edit the Makefile to include the proper X header files.

The apeX version control system interfaces to RCS, so you will need to either have RCS installed or edit the scripts apex_ci and apex_co to use your native version control system.

The apeX manual can be found in the doc directory as apex_man.latex. The dvi file is also included so that sites without LaTeX can simply print out the manual using lpr -d.

The source to apeX contains examples of Object Links. Simply load a *.apex file in the ./src/apex directory.

If you have any comments, suggestions, bug reports, etc, please let me know! I can be reached at

    agg@cs.princeton.edu
    Alex Gounares
    Princeton University Computer Science Department
    Princeton, NJ  08544

    Enjoy!

    alex

Note: This distribution also includes apeX Animate, a utility program for displaying X bitmap movies.