Trailing-Edge - PDP-10 Archives - decuslib10-05 - 43,50337/03/simdir.hlp
There is 1 other file named simdir.hlp in the archive. Click here to see a list.

With the SIMDIR program you can easily find out:
> Which separately compiled modules are required by one or several main
> Which program modules require a certain separately compiled procedure
or class.
To start the program type:
SIMDIR responds with a "*" , signalling that it is ready for a command.

In the simplest case, you can now write:


This will list all modules on your PPN which are used by the module
main.  main is usually a SIMULA main program, but can be a separately
compiled module.


This will list all modules on your PPN which use the separately compiled
module proc.

You can precede the SEARCH command with a DIRECTORY command to tell the
system to include other PPN:s in the search.  For example, you can

   DIRECTORY [*,*]

This will give a listing of all SIMULA programs on all PPN:s which
require your separately compiled procedure proc.

As input SIMDIR requires ATR-files from separately compiled classes and
procedures and REL-files from main programs.  This means that SIMDIR
only works when such ATR and REL files are present for the programs to
be listed.

The syntax of SIMDIR commands follows:

     <SEARCH-command>::= SEARCH <pattern> [<relation>[<pattern>]]
        <relation>::= USING ! REQUIRED BY
        <pattern>::= [<device>][<filename>][<ppn>][<switches>]
        <ppn>::= <left bracket><ppn1><right bracket>
        <ppn1>::= SELF ! OTHERS ! <pnr>,<pnr>
        <pnr>::= ! * ! <octal number>
        <switches>::= <switch> ! <switches><switch>
        <switch>::= /<switchname>
        <switchname>::= ALL ! MAIN ! CLASSES ! PROCEDURES !
                FAST ! TTY
        <device>::= <name>:
        <filename>::= <name>

        SEARCH <pattern> means that all modules matching the pattern
        will be searched for and listed.

        SEARCH <pattern> <relation> means that all modules matching the
        pattern will be searched for and listed together with the
        modules which have the given relation to the modules.

        SEARCH <pattern> <relation> <pattern> means that all modules
        matching the first pattern and having the given relation to any
        module matching the second pattern are listed.

        A module matches a pattern when it matches all components of
        that pattern.  If any component is missing in a pattern, then
        all modules match that component.  The pattern may not be empty,

        There are two special PPN:s that you may use in a pattern:
        [SELF] is the LOGIN PPN.  [OTHERS] stands for all PPN's except
        [SELF] which have been given in DIRECTORY commands.

        Explanation of switches:
                ALL             All modules match
                MAIN            Main programs match
                CLASSES         Classes match
                PROCEDURES      Procedures match
                FPROCEDURES     FORTRAN procedures match
                MPROCEDURES     MACRO-10 procedures match
                SPROCEDURES     SIMULA procedures match
                FAST            Do not output PPN
                TTY             Change output device
                                temporarily to TTY.

     <DIRECTORY-command>::= DIRECTORY <directories>
        <directories>::= <directory> ! <directory>,<directories>
        <directory>::= [<switch>] <ppn> [<switch>]
        <switch>   ::= /MAIN ! /-MAIN

        Include the given directories when searching.
        /MAIN means that all modules are fetched from this directory,
        /-MAIN that only external classes and procedures are fetched.
        Default is /-MAIN.

     <LIST-command>::= LIST <file specification>

        Program output is written on the specified file.  Default is

     <CLOSE-command>::= CLOSE

        The current list file is closed.

     <EXIT-command>::= EXIT

        Close current list file (if any) and return to monitor.

     <HELP-command>::= HELP [ /TTY ]

        Output help-text.

     All "reserved words" (upper case letters above) can be abbreviated
     arbitrarily.  Any conflicts are resolved as follows :
        /M means /MAIN
        /F means /FAST

     When SIMDIR is started a *D[S]/M command is automatically


     List all SIMULA modules on your own PPN
      .R SIMDIR

     List those of your own modules which are used by others in the same
      .R SIMDIR
      *DIR [,*]/M

                          [END OF SIMDIR.HLP]