On Jan 23, 2016, at 3:28 PM, Charles Mills wrote:
why is a PDSE necessary is necessary for COBOL 5 programs
Fundamentally, it is because it is. Because IBM said so. More
technically,
the new COBOL compiler outputs object code in a format such that
the binder
must make it into a program object, not a load module, and program
objects
must live in a PDSE, not a PDS. They have attributes that do not
map to a
PDS directory, only to the control structures of a PDSE.
I have not heard of this requirement with Assembler. What About PL/
I and
C, are they required to have load modules stored in a PDSE ?
So far as I know, mostly negative all around, except C/C++ has an
option
called XPLINK and it has the same story. Object code requires
program object
requires PDSE.
Is it the COBOL Compiler or the Binder/Linkage Editor that has the
requirement
A combination, as I wrote above.
So why cant a application programmer continue to use a Complier
prior to
COBOL 5 and link edit into the same PDS/E.
Absolutely s/he can. Load modules can live in a PDSE. Old object
code can be
made into program objects. Pre-5 COBOL is compatible with V2R2.
There are
benefits to the new COBOL, but it is by no means mandatory.
I'm Not understanding what/why COBOL 5 needs a PDSE.
As I wrote above, because IBM said so.
I worked with a manager who when he got questions from his people
like "why
does COBOL 5 require a PDSE?" would say let's split that question
up into
two parts to make it more manageable. First, "why?" That's a question
philosophers have been debating for millennia. There is no answer. And
second, "does COBOL 5 require a PDSE?" and that's easy -- the
answer is Yes.
Charles------------SNIP----------------
I would argue the word "requires" I suspect (and cannot prove) that
COBOL 5 can work perfectly fine without a PDSE.
I would be happy to be proven wrong.
Ed
----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [email protected] with the message: INFO IBM-MAIN