On Wed, Dec 19, 2018 at 11:51 AM Jeremy Nicoll < jn.ml.sfrg...@letterboxes.org> wrote:
> On Wed, 19 Dec 2018, at 15:16, Rick McGuire wrote: > > Yes it does. That's why they are called constants. They get evaluated > > once and calls will always return that value. ooRexx already has a > > ::CONSTANT directive, but it was restricted to literal values. This > > expands the concept to allow the constant value to be computed rather > > than just a literal. > > Thank-you! > > I've not understood all (or even much) of the discussion because the > underlying oo aspects of ooREXX are pretty much a mystery to me, but > I had the impression that different sorts of 'computed'ness were being > discussed. > > If you allow constants to have computed values, how do you solve the > problem of constants requiring other constants to have been defined > earlier? (And also in bad code, perhaps circular refs where every one > of a set of constants requires others to have been defined first)? > > That could be bad enough if the computed values of constants are just > the results of simple (eg arithmetic or string built-in functions) but > worse > if the computation to evaluate a constant can involve huge chunks of > code having to be executed. > This was already discussed in my earlier post on this. Constants that require calculation are processed in declaration order. A call to one that have not been initialized yet is an error. Rick > -- > Jeremy Nicoll - my opinions are my own. > > > _______________________________________________ > Oorexx-devel mailing list > Oorexx-devel@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/oorexx-devel >
_______________________________________________ Oorexx-devel mailing list Oorexx-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/oorexx-devel