What's wrong with extending the standard on the platform where COBOL
rules? The mainframe's raison d'ĂȘtre is to run COBOL programs! The ANSI
standard specifies OO but that seems to be only for Java interop on z/OS.
On 2020-04-08 8:30 PM, Seymour J Metz wrote:
Either ANSI requires allowing recursive inner subroutines or it doesn't. If
ANSI requires it then IBM isn't ANSI compliant; if ANSI doesn't require it then
it clearly has to do with COBOL semantics and the other compilers have extended
the standard. If ANSI doesn't require it then the question remains why not.
--
Shmuel (Seymour J.) Metz
http://mason.gmu.edu/~smetz3
________________________________________
From: IBM Mainframe Discussion List [IBM-MAIN@LISTSERV.UA.EDU] on behalf of
David Crayford [dcrayf...@gmail.com]
Sent: Wednesday, April 8, 2020 7:37 AM
To: IBM-MAIN@LISTSERV.UA.EDU
Subject: Re: Why rip out COBOL when you can modernize key applications? -
Weirdware
On 2020-04-08 7:24 PM, Seymour J Metz wrote:
Recursive programs cannot contain nested subprograms.
Why, in the name of the great lord Harry, not? I'll stick to PL/I, TYVM.
COBOL semantics probably don't have anything to do with it as other
COBOL compilers support it.
I would suggest it's an implementation detail with how z/OS COBOL
allocates LOCAL-STORAGE.
--
Shmuel (Seymour J.) Metz
http://mason.gmu.edu/~smetz3
________________________________________
From: IBM Mainframe Discussion List [IBM-MAIN@LISTSERV.UA.EDU] on behalf of
David Crayford [dcrayf...@gmail.com]
Sent: Wednesday, April 8, 2020 4:37 AM
To: IBM-MAIN@LISTSERV.UA.EDU
Subject: Re: Why rip out COBOL when you can modernize key applications? -
Weirdware
*RECURSIVE*
An optional clause that allows COBOL programs to be recursively
reentered.
You can specify the RECURSIVE clause only on the outermost program
of a compilation unit. Recursive programs cannot contain nested
subprograms.
If the RECURSIVE clause is specified, program-name can be
recursively reentered while a previous invocation is still active.
If the RECURSIVE clause is not specified, an active program cannot
be recursively reentered.
On 2020-04-08 4:09 PM, Mike Schwab wrote:
PROGRAM-ID pgmname RECURSIVE.
https://www.ibm.com/support/knowledgecenter/en/SS6SG3_4.2.0/com.ibm.entcobol.doc_4.2/PGandLR/tasks/tpsubw03.htm
On Tue, Apr 7, 2020 at 9:47 PM Seymour J Metz <sme...@gmu.edu> wrote:
Maybe,but there's nothing in his example to suggest that COBOL supports
recursion; you'd have to check the documentation.
--
Shmuel (Seymour J.) Metz
http://mason.gmu.edu/~smetz3
________________________________________
From: IBM Mainframe Discussion List [IBM-MAIN@LISTSERV.UA.EDU] on behalf of
David Crayford [dcrayf...@gmail.com]
Sent: Tuesday, April 7, 2020 9:44 PM
To: IBM-MAIN@LISTSERV.UA.EDU
Subject: Re: Why rip out COBOL when you can modernize key applications? -
Weirdware
Wow, and some people criticize Java for being verbose!
So using nested programs one can implement recursion in COBOL which you
couldn't do before without using a table stack.
On 2020-04-08 5:14 AM, Frank Swarbrick wrote:
Nested subroutines.
Small example:
ID DIVISION.
PROGRAM-NAME. MAINPROG.
[...]
PROCEDURE DIVISION.
CALL 'NESTED-PROGRAM-1'
GOBACK.
ID DIVISION.
PROGRAM-ID. NESTED-PROGRAM-1.
DATA DIVISION.
WORKING-STORAGE SECTION.
01 LOCAL-VAR-1 PIC X.
[...]
PROCEDURE DIVISION.
DISPLAY 'IN NESTED-PROGRAM-1'
GOBACK.
END PROGRAM NESTED-PROGRAM-1.
END PROGRAM MAINPROG.
________________________________
From: IBM Mainframe Discussion List <IBM-MAIN@LISTSERV.UA.EDU> on behalf of David
Spiegel <dspiegel...@hotmail.com>
Sent: Tuesday, April 7, 2020 2:58 PM
To: IBM-MAIN@LISTSERV.UA.EDU <IBM-MAIN@LISTSERV.UA.EDU>
Subject: Re: Why rip out COBOL when you can modernize key applications? -
Weirdware
Hi Frank,
Thank you for that information.
(All the COBOL I support(ed) didn't contain these and neither did my
university courses in the '70s.)
If I wanted to look them up, which keyword(s) would I use?
Thanks and regards,
David
On 2020-04-07 15:49, Frank Swarbrick wrote:
Internal subroutines and local variables have been supported since COBOL 1985
(VS COBOL II era).
They're not ideal, but they do exist.
________________________________
From: IBM Mainframe Discussion List <IBM-MAIN@LISTSERV.UA.EDU> on behalf of David
Spiegel <dspiegel...@hotmail.com>
Sent: Tuesday, April 7, 2020 12:58 PM
To: IBM-MAIN@LISTSERV.UA.EDU <IBM-MAIN@LISTSERV.UA.EDU>
Subject: Re: Why rip out COBOL when you can modernize key applications? -
Weirdware
How about no internal subroutines with local variables?
On 2020-04-07 14:47, Bob Bridges wrote:
I used to bad-mouth COBOL, and I still prefer languages that are less wordy. But I came
somewhat reluctantly to see that it has its strengths. The one I think most important is
that it encourages even novice programmers to organize their logic in what we used to
call a "top-down" manner: This paragraph accomplish a certain task by
executing paragraphs one through three, then two more, and this subparagraph executes
subsubparagraphs, and so on. Forms good habits, I think.
---
Bob Bridges, robhbrid...@gmail.com, cell 336 382-7313
/* My life is in the hands of any fool who can make me lose my temper.
-driving motto */
-----Original Message-----
From: IBM Mainframe Discussion List [mailto:IBM-MAIN@LISTSERV.UA.EDU] On Behalf
Of scott Ford
Sent: Tuesday, April 7, 2020 12:55
I learned Assembler first and then Cobol and then some PL/1. I always felt
each language had its strengths and weaknesses and all were like tools in a
toolbox.
----------------------------------------------------------------------
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
.
----------------------------------------------------------------------
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
----------------------------------------------------------------------
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
----------------------------------------------------------------------
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