On Thu, 19 Mar 2009 01:11:23 -0400, Gerhard Postpischil wrote: >Ian S. Worthington wrote: >> I'm aware of the distinction, but have always felt that that's a fairly >> reasonable working definition of "default", at least up until a reassignment. > >I suspect that he considers the language assignment of the >upper-cased variable name to be the default, hence the distinction? > While that's true, it's the lesser concern. Misusing "default" to describe the universal assignment can mislead the reader to believe that the construct merely defines a value to be used for members otherwise undefined. With this assumption, readers of the following program:
/* Rexx */ signal on novalue; /* Universal assignment is not a "default value". */ trace R X.42 = 'specific ' say symbol( 'X.42' ) value( 'X.42' ) X.42 = 'universal' say symbol( 'X.42' ) value( 'X.42' ) drop X.42 say symbol( 'X.42' ) value( 'X.42' ) ... may expect incorrect results from the second and/or third "say" instructions. This is more likely for readers with some programming experience, who are likely to make incorrect and oversimplified assumptions about the implementation mechanism. Even IBM developers have fallen victim: at one point an attempt to optimize storage management caused Rexx to give incorrect results for the third "say" instruction. This appears to have been repaired by APAR. --gil ---------------------------------------------------------------------- For IBM-MAIN subscribe / signoff / archive access instructions, send email to [email protected] with the message: GET IBM-MAIN INFO Search the archives at http://bama.ua.edu/archives/ibm-main.html

