Accessing Code Comments

If you know the name of the library package in question, simply look at the source code in qplib3.5. Apart from code comments, there is information about predicates in two files that summarize the contents of the directory. They are called Contents and Index. (See the figure above.) If you do not know the name of the package the Index file will be helpful. If you know the name of the package, you can use the Contents file to gain further information about it.

The Index file contains one line for each exported predicate in the library. The predicates are listed in standard order, ignoring module names. A typical entry looks like this:

     list_to_binary/4   flatten   ./flatten.pl
     

This means that there is a predicate called list_to_binary/4 in the library, that it lives in a module called flatten, and that the file that contains it is flatten.pl in the same directory as the Index.

If you have set up an environment variable QL holding the name of the Quintus library directory, you could ask "what predicates are there to deal with files?" by issuing the command

     % egrep files $QL/Index
     

The Contents file is organized by library files rather than by predicates. A typical entry in this file is a block of lines like this:

     basics  + documented in manual
     basics  % the basic list processing predicates
     basics  - ./basics.pl
     basics  : member/2
     basics  : memberchk/2
     basics  : nonmember/2
     

The first line means that library(basics) is one of the library packages that is fully documented in this manual. The second line is a short description of the contents. The third line says which file contains library(basics); in this case it is basics.pl in the same directory as Contents. The remaining lines list the predicates exported by library(basics). You could obtain this information by issuing the command

     % egrep '^basics' $QL/Contents
     

These files are provided as a convenience, and do not have the same authority as the printed manual.