First, that code is highly obfuscated. Why would you ever want to write "IF foo 
& TRUE" instead of "IF foo"?

Second, "ELSE IF ¬TRUE THEN foo" is dead code.

Third, there are no booleans in REXX; the only data type is character string. 


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


________________________________________
From: IBM Mainframe Discussion List <IBM-MAIN@LISTSERV.UA.EDU> on behalf of CM 
Poncelet <ponce...@bcs.org.uk>
Sent: Sunday, September 6, 2020 9:31 PM
To: IBM-MAIN@LISTSERV.UA.EDU
Subject: Re: REXX true/false (was Constant Identifiers)

In the following example,
TRUE = (1 - 1 = 0 & 1 ¬= 0) [or whatever is more appropriate],
it is then sufficient e.g. to code:
IF 4 ¬= 6 & TRUE THEN <whatever>
ELSE IF ¬TRUE THEN <whatever else>

I.e. TRUE can be defined as a Boolean '1'b in REXX, as per above.

On 06/09/2020 20:43, Paul Gilmartin wrote:
> On Sun, 6 Sep 2020 12:03:18 -0400, scott Ford wrote:
>
>> I have done things like true =‘Y’ and then
>>
>> If true
>>  ..........
>> end
>>
> What language?  That would certainly be a syntax error in Rexx.
> And why?  You could just omit the "if true" and code:
>     do
>         ..........
>     end
>
>
> n Sun, 6 Sep 2020 17:39:48 +0000, Seymour J Metz wrote:
>> A simple true=1;false=0 should suffice for clarity.
>>
> Perhaps not to someone most familiar with shell scripts
> where the definitions are nearly the opposite (command
> status ($?) = 0 means success or true).
>
>
> On Sun, 6 Sep 2020 17:43:04 +0100, Rupert Reynolds wrote:
>> The advantage of Boolean is clarity in something like:-
>> /* Rexx */
>> TRUE = (1=1)
>> ...
>> SELECT
>>  WHEN logmode = "D4A32782" & (GotASCII & GotVBMrecord) THEN do
>>    ...
> Continuing your example, how would you have set the variables
> "GotASCII" and "GotVBMrecord" using the quasi-constants TRUE
> and FALSE?  Does that enhance either clarity or economy of
> expression?
>
> I'm thinking that something like:
>     if filetype=='ASCII' then GotASCII = TRUE; else GotASCII = FALSE
> would more succinctly be written:
>     GotASCII = ( filetype=='ASCII' )
>
> But I've seen even worse, such as:
>     if  GotASCII = true then ...
> rather than simply:
>     if  GotASCII then ...
>
>
> On Sun, 6 Sep 2020 19:28:11 +0000, Seymour J Metz wrote:
>> Yes, you can count on the truth values of 0 and 1 in REXX never changing.
>>
> Only if I spent $60 for the ANSI Standard .pdf
>
> -- 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