SUBRFY October 8,1976 SUBRification is a way of getting rid of many of the MCALLs which could not be practically removed using GLUE. If a function is called by many seperate groups it is difficult to GLUE it to all the groups or to GLUE all the groups together. What is really needed is to be able to allow something to be PUSHJed to from seperate groups without forcing it to be part of those groups. This is indeed the case with PUSHJ entries to MUDDLE SUBRs. A user will now be able to make his RSUBRs look like SUBRs in this respect. SUBRFY takes a GROUP which must be in NBIN format. It purifies the RSUBRs and RSUBR-ENTRYs in the group and changes them so that they can be PUSHJd to. It also produces a file which can be used by the compiler to generate PUSHJs to the functions in the SUBRFYd group. Subrify should be loaded before loading the group to be processed. The reason for this is so that GLUE bits stay around. To load SUBRFY You should then GROUP-LOAD the group. Your group should be GLUEd already since SUBRFY does not glue the group together. SUBRFY can then be called in the following manner: <- file-name -> <- message-channel -> > where name Is the name of the group. file-name Is the name of the file in which SUBRFY should put the information for the compiler. message-channel This optional argument can be used to specify a channel on which to print info about SUBRFYs progress. The default is not to print anything. The file produced by SUBRFY should be FLOADd for compilations where functions in the SUBRFYd group are called. This can be done by FLOADing it in the things to do before COMPILATION. Like purification, SUBRification changes the MUDDLE. The only way to preserve the SUBRFYd group is to SAVE the MUDDLE. Before SAVEing the MUDDLE the SUBRFY package should be removed. This can be done by doing a followed by a . Any suggestions or complaints should be forwarded to BTB or CLR.