New control-lines for version 5



next up previous
Next: Handling of include Up: Release of Patchy version Previous: Changes in specifications

New control-lines for version 5

  1. +NAME, length, nslots, nbytes

    Giving this c/l in the blank deck of the cradle one can control the name stack of Patchy:

          length  the number of significant characters in names, default 32
          slots   maximum number of names, default 2000
          nbytes  number of bytes of text store reserved, default 24000
    Giving +NAMES,8. one gets back-compatibility in the handling of long names.

  2. +GAP, gc, gl, maxl, chpl

    Giving this c/l in the blank deck of the cradle one can control the space limits at which garbage collection occurs.

          gc      the number of free words in the control store
                      default 4000, minimum 1000
          gl      the number of free line slots
                      default 200, minimum 100
          maxl    the maximum number of lines expected in any deck
                      default 5000, minimum 2000
          chpl    the mean number of characters per line
                      default 40, minimum 20

  3. +MORE .file-name

    With this control-line one can continue the blank deck of the cradle from the file whose name is given in the comment field.

  4. +UPDATE.

    For an update run this control-line must be given in the blank deck of the cradle. The old options KEEPORD, SEQORD, YESIF are no longer needed nor accepted. Delayed control-lines, marked by "-" instead of a "+", will be inserted and upgraded. Wether a Pam file contains correction material or is a Pam file to be updated is signalled by the T=UPDATE parameter on the c/l +PAM as before.

  5. +SKIP, IF=... is the opposite of +SELF, IF=..., that is the material following is ignored if the condition is "true". In particular +SKIP. is an unconditional skip.

  6. +_IF, ... et al. to mark conditional material:
          +_IF, [IF=]...     open an IF section of material, accept the
                             material just following if "true"
    
          +_ELSE, [IF=]...   accept if the initial +IF and all previous +ELSE
                             have failed, and if the IF condition is true.
    
          +_ENDIF            terminate an IF section.
    
          +_IFNOT, ...       is the opposite of "+_IF, ...", ie. the material
                             is accepted if the condition is "false".
    These statements may be nested, in which case the number of underscores should indicate the nesting level. Level 1 may be indicated either by zero or by 1 underscore, level 2 should have one more, etc.

    These are "soft" control-lines, ie. they may occur within actions or +KEEP's.

  7. +NIL. is a comment line, also a "soft" control-line.

    For many comment lines in succession it is better to head them with +SKIP. and terminate with +SELF. or some other "hard" c/l.

  8. +SHOW, ASM.

    This will display the current state of the ASM handling control structure. This may help if one is in doubt what Patchy did of one's +ASM lines. If given in the blank deck of the cradle one sees the structure before defaults have been resolved (defaults are marked by -1), an operation which is executed only at the end of the blank deck of the cradle.

  9. +XDIVERT, pname [,D=dname].

    Extra diversion is like the old diversion triggered by +DIVERT at one level up. See sect. 7 for details.

  10. +INCLUDE, NAME.

    This causes insertion of the line

          #include "name.h"
    into the ASM output at this point, in lower case, and it signals to Patchy that the current deck depends on this include file, a piece of information passed on to Nyshell via the log file. See sect. 5 for further details.



next up previous
Next: Handling of include Up: Release of Patchy version Previous: Changes in specifications


@Thu Oct 6 15:53:34 MET 1994