The MAKEARRAY method of a stem variable will return whatver subscripts you 
used. If you're using the stem.0 convention then those will be numeric, but

    A.['bbb']=1
    A.['BBB']=2
    do i over A.~MAKEARRAY
       say i
       end

will give alphabetic output.

However, OOREXX also has, e.g., .array, .set, classes.


--
Shmuel (Seymour J.) Metz
http://mason.gmu.edu/~smetz3

________________________________________
From: IBM Mainframe Discussion List [IBM-MAIN@LISTSERV.UA.EDU] on behalf of 
Charles Mills [charl...@mcn.org]
Sent: Tuesday, February 2, 2021 4:08 PM
To: IBM-MAIN@LISTSERV.UA.EDU
Subject: Re: Rexx stem variable question

Full Rexx stem enumeration would *have* to include both numeric and non-numeric 
tails and would have to account for all kinds of gaps:

A.1 = "Foo"
A.17 = "Bar"
A.Notary = "Sojack"

Numeric-only, gap-less enumeration is easy to do on your own

Do i = 1 to A.0
  Say A.i
  End i

Charles


-----Original Message-----
From: IBM Mainframe Discussion List [mailto:IBM-MAIN@LISTSERV.UA.EDU] On Behalf 
Of Paul Gilmartin
Sent: Tuesday, February 2, 2021 12:46 PM
To: IBM-MAIN@LISTSERV.UA.EDU
Subject: Re: Rexx stem variable question

On Tue, 2 Feb 2021 19:16:52 +0000, Seymour J Metz wrote:

>The behavior of value() is confusing in that it violates the law of least 
>astonishment; naively I would expect value('AAA.bbb') and value('AAA.BBB'), ...
>
Those arguments name the same compound symbol,
therefore the results are identical, regardless of how
or whether BBB, BBb, etc. are defined.  Consider:
    Bbb = 'Wombat'
    say AAA.bbb value( 'AAA.bbb' )
    say AAA.BBB value( 'AAA.BBB' )

>but that is neither how it is documented nor how it works.
>
That is both how it's documented and how it works.
Otherwise, cite.

>In OOREXX a trailing period is enough to designate a stem. However, if you 
>want a stem variable whose name does not end in a period, then you need to 
>explicitly initialize it.
>
How do you refer to its members?

>OOREXX does have enumerators.
>
Have you submitted your RFE yet?
If one builds OOREXX from source on z/OS, will it easily interface
to unmodified valuable host command environments such as SDSF
and SYSCALL?

How does it report gaps in a compound symbol, e.g.:
    A. = 'Foo'
    drop A.42

Also:
    A. = 'Foo'
    Z = ''
    A.Z = 'Nil'

-- gil

----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN

----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN

----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN

Reply via email to