On Sat, 12 Oct 2013 08:42:02 -0400, John Gilmore wrote: > >A PDSE member containing a program object has a very different, and >very sketchily documented, mixed internal structure. Moreover, the >loading of some of its text elements may be deferred until they are >required|requested. > "sketchily documented" by intent. At SHARE Denver, John E. practically boasted that IBM would not make the same mistake with program objects, of docmenting that structure and allowing customers and ISVs to come to rely on it, making it impossible for IBM to change the specification.
>BPAM, which reads both with different expectations for each, is not >equipped to read flat files; and neither BSAM nor QSAM can make any > No. BPAM is capable of reading (but not writing) base members of UNIX directories. I hope we can agree that those members (though not the directories) are flat files. >sense of either a load-module PDS member or a very differently >organized program-object PDSE member. > >Paul Gilmartin's question, > >| Why couldn't the same information [a program >| object] be stored in a PDS? > >thus misses the mark. > >Shmuel Metz's response to that question, > >| Because a PDS member doesn'y have the >| right structure. > >is of course correct or "so nearly so as makes no difference", but it >is not really very responsive. I am reminded of Moliere's physician >who, asked how sleeping draughts functioned, replied that their >effectiveness was due to their dormitive powers. > >That said, I can feel considerable sympathy for Shmuel's response if >he judged, as I do, that Paul's question was at least in part >tendentious. > No. The experiment that R.S. hinted at, and Charles lacked the stamina to do: //GEN1 EXEC PGM=IEBGENER //SYSPRINT DD SYSOUT=(,) //SYSIN DD * //SYSUT2 DD DISP=(,PASS),UNIT=SYSDA,SPACE=(1000,(1000,,5)), // DSNTYPE=PDS,DSN=&&FLAT(TEMP) //SYSUT1 DD PATHOPTS=ORDONLY,PATH='&XDIR/tiny', // RECFM=VB,LRECL=1000,BLKSIZE=32760 //* //GEN2 EXEC PGM=IEBGENER //SYSPRINT DD SYSOUT=(,) //SYSIN DD * //SYSUT2 DD PATHOPTS=(ORDWR,OTRUNC,OCREAT), // PATHMODE=SIRWXU,PATH='&XDIR/tiny2' //SYSUT1 DD DISP=(OLD,PASS),DSN=&&FLAT(TEMP) //* //UNIX EXEC PGM=BPXBATCH, // PARM='SH cd &XDIR; cksum tiny tiny2; ./tiny2 &&&& echo ∎' //* PARM='SH cd &XDIR; cksum tiny tiny2; ./tiny2 &&&& echo ∎' //STDIN DD PATHOPTS=ORDONLY,PATH='/dev/./null' //STDOUT DD SYSOUT=(,) //STDERR DD SYSOUT=(,) // ... produces in STDOUT: pgilmart@brm3:198$ cat 106.STDOUT.txt 3496628668 86016 tiny 3496628668 86016 tiny2 Hello, world! ∎ I suppose you might insist that IEBGENER in the second step somehow reconstituted the "black-magic format" of a program object that had (temporarily) resided as a flat file in a PDS Shmuel may distrust IEBGENER to that extent; I don't. -- gil ---------------------------------------------------------------------- For IBM-MAIN subscribe / signoff / archive access instructions, send email to [email protected] with the message: INFO IBM-MAIN
