Yes, very verbose.
And yes, recursion is possible, but you must specify "IS RECURSIVE" on the 
PROGRAM-ID.  Not sure what having nested programs has to do with that, though.

________________________________
From: IBM Mainframe Discussion List <IBM-MAIN@LISTSERV.UA.EDU> on behalf of 
David Crayford <dcrayf...@gmail.com>
Sent: Tuesday, April 7, 2020 7:44 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

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

Reply via email to