[.6 Level 6 Subprograms B.6.1 ACYCLC This subroutine, written by Cunningham (1973) as part of the HASSAL subroutine package, performs the acyclic algorithm on an SIM. It can be made to consider only elements with weights equal to zero or all elements. B.6.2 CALCDC This subroutine computes the degree of decoupling for a partial decoupling by calculating, from function index definitions, the expected number of functions decoupled. B.6.3 CLRMEM This subroutine clears MEMORY of unneeded data items. It does this by searching MEMDIR (the directory to MEMORY) for data items with a type code of "-1," which indicates that the data item is no longer needed. Each time one is found, the remaining data in both MEMDIR and MEMORY which are to be retained are shifted up in the vector to fill the space previously occupied by the unneeded data. The pointers in MEMDIR are updated to reflect the shift in the data items in MEMORY. B.6.4 EVALUS EVALU8 can be considered to be a FORTRAN interpreter. It evaluates compute strings, which are actually representations of F0RTRAN statements. EVALU8 can interpret any FORTRAN arithmetic or logical expression which is in compute string form. B.6.5 HASSAL Written by Cunningham (1973), HASSAL performs the weighted output set assignment, described by Gupta et al. (1974), for an