HELP POPINDEX                                    Chris Slymon, June 1983
                                            Updated A.Sloman August 1990

popindex(<word|string>) -> <list of strings>

This procedure uses an index to system and library procedures to find
a file or list of files containing definitions of the procedure whose
name is given as argument.

Given a word or string, -popindex- returns an alphabetically sorted list
of strings indicating the source files for all the procedures defined in
the system source and library directories which contain the given item
as an initial substring. Each string in the list returned contains the
procedure name followed by a single space and the source file for that
procedure, unless the procedure is an UPDATER when "updaterof" is
sandwiched between the name and the file. For example


        popindex('has')

Will procduce a list containing strings such as

    'has_no_name $popvedlib/windows.p'
    'hasendstring $popautolib/hasendstring.p'
    'hasfalse $popliblib/logic.p'
    'hash_table_count $usepop/pop/lisp/src/hash.p'
    'hasmidstring $popautolib/hasmidstring.p'
    'hasstartstring $popautolib/hasstartstring.p'
    'hassubstring $popautolib/hassubstring.p'


The index does not contain entries for certain items, which are not
defined using the "define" syntax, e.g showlib, which is defined
thus...

global vars macro showlib = [; .ved_showlib; ];

Contrast
    popindex('ved_showlib') =>
    ** [ved_showlib $popvedlib/ved_showlib.p]

To enable users to create and access their own indexes there are two
global variables:
    global vars popindex_suffixlist;
    DEFAULT value:
        ['AO' 'PZ' 'ac' 'df' 'gk' 'lo' 'qr' 'ss' 'tu' 'vv' 'wz']

    global vars popindex_filename;
    DEFAULT value:
        '$usepop/pop/ref/popindex.'


The effect is that the index files used are in the directory
$usepop/pop/ref and have the form 'popindex.??' where the file suffix is
one of 'AO' 'PZ' ... etc. Either default may be changed later.

Names of index files are created by concatenating elements of
the suffix list with the string called popindex_filename.

For details
    SHOWLIB * POPINDEX
    SHOWLIB * BUILDINDEX

See also
HELP * POPWHERE, formatted display of the information
HELP * SOURCEFILE, read the source file into VED

A UNIX SHELL command file for creating an index to the POP system is
provided in
    $usepop/pop/com/mkind

This may be copied and modified for creating user indexes.

On VMS the file is
    use$pop:[pop.com]mkind.com


--- C.all/help/popindex
--- Copyright University of Sussex 1990. All rights reserved. ----------
