Prospect Coding Standard and Development               alext@fc.hp.com
----------------------------------------------------------------------

The coding standard is very simple:

    -  Use the CVS archive.

    -  Only check stuff into the archive that builds and builds with
       no warnings nor errors.

    -  If you distribute a build, rtag the CVS repository with a 
       symbolic name following this convention:
         
           # cvs rtag rel_XpYpZ-extra prospect

       where:
              X      = Major number
              Y      = Minor number
              Z      = Maintenance number
              -extra = Pre-release marker (i.e. -Preview6)

       If in doubt, talk to the owner.

    -  Use a line length maximum of 80 characters, 72 characters for
       text documents.

    -  Do not use tabs.  Period.

    -  Indent by four spaces.

    -  If your editor does not support this, switch editors.  Elvis
       is a good choice.  Put the following into your .elvisrc:

           " elvis setup file
           set tabstop=8
           set shiftwidth=4
           set autoindent
           set noautotab
           set exrc
           set tw=0

       If you use vim, put this in your .vimrc:

           set ai
           set expandtab
           set sw=4

       For both vi's above, then, indent with Ctrl-T and deindent
       with Ctrl-D.

    -  Use the C notation for comments in C code.  Leave the C++
       style for C++. 

           /* Single line comments are such. */

           /*
            * Multiline comments are
            * made thus.
            */
           code_goes_here();

           /* Multiline comments as such
            * are also acceptable iff there is
            * at least one space above.
            */

    -  Put a new line before the beginning of a block brace.

           for (i=0; i<10; i++)
           {
               do_stuff();
           }
           
       This alternate form is also acceptable.
           
           for (i=0; i<10; i++) {
               do_stuff();
           }

    -  There is no space between a function and it's arguments.

           call_this_function(arg1, arg2);

    -  Use standard C types.  If you absolutely need other types, use
       the system standard include files for these:

           /usr/include/stdint.h   and/or  /usr/include/inttypes.h


