In PL/I---Things are very different in toy languages like C---the only legitimate use for static variables is as constants initialized in their declarations and never altered thereafter. In PL/I it is also possible to declare and use scalar constants. Thus
declare pi static binary float(53) initial(3.141592653589793238e+000) ; and declare pi binary float(53) value(3.141592653589793238e+000) ; are functionally equivalent in most cases. I do not myself make much use of named constants in PL/I, both because their syntax is ugly and irregular and because aggregate named constants are not supported; but they are available to those who wish to use them. Note also that the chief value of the PL/I attributes ASSIGNABLE and NONASSIGNABLE is in the characterization of procedure parameters. John Gilmore, Ashland, MA 01721 - USA ---------------------------------------------------------------------- For IBM-MAIN subscribe / signoff / archive access instructions, send email to [email protected] with the message: INFO IBM-MAIN
