"ON NO VALUE" from memory.
"supports the standard Rexx language" as per Mike Cowlishaw's definition
(COW).
Comparison of Built-In Functions
The following table provides a comparison of Built-In Functions
for VM/SP CMS REXX (CMS), M.F. Cowlishaw's definition (COW),
Systems Application Architecture Procedures Language (SAA), and
CTC REXX.
Table 3. Comparison of Built-in Functions
Availability of Built-in Functions
Function SAA COW CMS CTC
ABBREV x x x x
ABS x x x x
ADDRESS x x x x
ARG x x x x
BITAND x x x x
BITOR x x x x
BITXOR x x x x
B2X x - - x
CENTER x x x x
CHARIN x x - x
CHAROUT x x - x
CHARS x x - x
COMPARE x x x x
CONDITION x - - x
COPIES x x x x
C2D x x x x
C2X x x x x
DATATYPE x x x x
DATE x x x x
DELSTR x x x x
DELWORD x x x x
DIGITS x x x x
D2C x x x x
D2X x x x x
ERRORTEXT x x x x
FORM x x x x
FORMAT x x x x
FUZZ x x x x
INSERT x x x x
LASTPOS x x x x
LEFT x x x x
LENGTH x x x x
LINEIN x x - x
LINEOUT x x - x
LINES x x - x
MAX x x x x
MIN x x x x
OVERLAY x x x x
POS x x x x
QUEUED x x x x
RANDOM x x x x
REVERSE x x x x
RIGHT x x x x
SIGN x x x x
SOURCELINE x x x x
SPACE x x x x
STREAM x - - x
STRIP x x x x
SUBSTR x x x x
SUBWORD x x x x
SYMBOL x x x x
TIME x x x x
TRACE x x x x
TRANSLATE x x x x
TRUNC x x x x
VALUE x x x x
VERIFY x x x x
WORD x x x x
WORDINDEX x x x x
WORDLENGTH x x x x
WORDPOS x x x x
WORDS x x x x
XRANGE x x x x
X2B x - - x
X2C x x x x
X2D x x x x
On 26/04/2020 02:35, Seymour J Metz wrote:
>> After commenting out the "SIGNAL ON NO VALUE"
> "SIGNAL ON NOVALUE" , Shirley.
>
>> SPF/PC Rexx supports the standard Rexx language,
> Original, but certainly not standard.
>
>> See below for the SPF/PC standard Rexx one.
> DATE('B',foo,'S') is valid in standard Rexx. I don't believe that the first
> and third parameters are allowed to be longer than 1 character.
>
>
> --
> Shmuel (Seymour J.) Metz
> http://mason.gmu.edu/~smetz3
>
> ________________________________________
> From: IBM Mainframe Discussion List [[email protected]] on behalf of
> CM Poncelet [[email protected]]
> Sent: Saturday, April 25, 2020 7:10 PM
> To: [email protected]
> Subject: Re: Friday OT, cheerful program for gloomy times
>
> Have you checked that your version works, other than on a mainframe?
>
> After commenting out the "SIGNAL ON NO VALUE" because it produces a
> "LABEL NOT FOUND", I ran it and got:
>
> bio2(50): Error #40, Incorrect call to routine
> FACTOR1 = DATE( 'Base', YEAR || MONTH || DAY, 'Standard' )
>
> PRESS ANY KEY TO CONTINUE.
>
> SPF/PC Rexx supports the standard Rexx language, but not the full IBM
> REXX (which includes EXECIO etc.) and it does not recognise your format
> of DATE parms. See below for the SPF/PC standard Rexx one.
>
> DATE({option})
>
> Parameter
>
> option The format to use to return the date. The options are:
>
> B (Basedate) Returns the number of complete days (not
> including the current day) since and including the base
> date, January 1, 0001, in the format: dddddd (no
> leading zeros). The expression "DATE(B)//7" returns a
> number in the range 0-6, where 0 is Monday and 6 is
> Sunday.
>
> You can use this option to determine the day of the
> week independent of the national language in which you
> are working.
>
> Note: The origin of January 1, 0001 is based on the
> Gregorian calendar. Though this calendar did not exist
> prior to 1582, Basedate is calculated as if it did:
> 365 days per year, an extra day every four years except
> century years, and leap centuries if the century is
> divisible by 400. It does not take into account any
> errors in the calendar system that created the Grego-
> rian calendar originally.
>
> C (Century) Returns the number of days, including the
> current day, so far in this century in the format
> 'ddddd' (no leading zeros or blanks).
>
> D (Days) Returns the number of days, including the
> current day, so far in this year in the format 'ddd'
> (no leading zeros or blanks).
>
> E (European) Returns the date in the format 'dd/mm/yy'.
>
> J (Julian) Returns the date in the format 'yyddd', where
> 'ddd' is the number of days so far in the year.
>
> L (Language) Returns the date in the format
> 'dd month yyy'.
>
> M (Month) Returns the full name of the current month, in
> mixed case.
>
> N (Normal) Explicitly returns the date in the default
> format 'dd mmm yyyy', as described above.
>
> O (Ordered) Returns the date in the format 'yy/mm/dd'
> (suitable for sorting).
>
> S (Standard) Returns date in the format 'yyyymmdd' (suit-
> able for sorting). This is one of the three forms
> recommended in the International Standards Organization
> Recommendation ISO/R 2014-1971 (E). The other two
> forms that document recommends can be derived from this
> form by separating the month from the year and day
> using either blanks or hyphens, for example:'1989 08
> 27' or '1989-08-27'.
>
> U (USA) Returns the date in the format 'mm/dd/yy'.
>
> W (Weekday) Returns the day of the week, in mixed case.
>
> Cheers.
>
>
> On 25/04/2020 22:27, CM Poncelet wrote:
>> Nice one. (BTW My version was not "optimised": it worked and that was
>> enough.)
>>
>> Your NUMERIC DIGITS 8 *might* not be sufficient for your "finite
>> difference equation to generate table of sines". I used the much slower
>> Taylor series for calculating sines, for which NUMERIC DIGITS 100 worked
>> "OK" - but without checking whether this could be reduced to 10 or 8.
>>
>> Cheers.
>>
>>
>> On 25/04/2020 21:51, Paul Gilmartin wrote:
>>> On 2020-04-25, at 08:38:08, Joel C. Ewing wrote:
>>>> Always curious about compatibility issues, copied program and pasted
>>>> into gedit on Fedora Linux, put a leading
>>>> "#!/usr/bin/rexx" and tried to run with oorexx on linux. Only code
>>>> issues found:
>>>> (1)Not really a code issue, but had to to run through dos2unix to
>>>> convert Windows CR LF end-of-line to unix LF end of line or don't even
>>>> get past the unix shebang 1st line -- can't find program "rexx" with CR
>>>> appended to name.
>>>> (2)Only special characters allowed in variable names in oorexx are !, ?,
>>>> and _, so "#DAYS" is not a valid variable name and produced an error
>>>> message about unexpected "#". Find-replace-all "#DAYS" to "NR_DAYS"
>>>>
>>>> That's all it took to get it to run.
>>>>
>>> I did not copy-and-paste; I downloaded the attachment,
>>> which appears to be UTF-8.
>>>
>>> For Regina, Regina.pdf says: 3.1.1.1 Negators
>>> ... Regina supports the following characters as negators:
>>> ...
>>> ¬ Logical Not
>>> Copy-and-paste from the pdf gives me:
>>> 931 $ printf ¬ | od -tx1
>>> 0000000 c2 ac
>>> ... the UTF-8 "¬". But when I paste it into an EXEC, Regina says:
>>> say 2+2 ¬= 4
>>> Error 13 running "/Users/paulgilm/bin/rxx", line 2: Invalid character
>>> in program
>>> Error 13.1: Invalid character in program "('c2'X)"
>>>
>>> I much prefer when the examples in the Ref. actually work. Does
>>> ooRexx accept UTF-8 "¬"?
>>>
>>> I went on and did something fancy. Attached.
>>>
>>>
>>> ----------------------------------------------------------------------
>>> For IBM-MAIN subscribe / signoff / archive access instructions,
>>> send email to [email protected] with the message: INFO IBM-MAIN
>>>
>>>
>>> -- gil
>>>
>>>
>>> ----------------------------------------------------------------------
>>> For IBM-MAIN subscribe / signoff / archive access instructions,
>>> send email to [email protected] with the message: INFO IBM-MAIN
>> ----------------------------------------------------------------------
>> For IBM-MAIN subscribe / signoff / archive access instructions,
>> send email to [email protected] with the message: INFO IBM-MAIN
>> .
>>
> ----------------------------------------------------------------------
> For IBM-MAIN subscribe / signoff / archive access instructions,
> send email to [email protected] with the message: INFO IBM-MAIN
>
> ----------------------------------------------------------------------
> For IBM-MAIN subscribe / signoff / archive access instructions,
> send email to [email protected] with the message: INFO IBM-MAIN
> .
>
----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [email protected] with the message: INFO IBM-MAIN