On Tue, 6 Aug 2013 12:39:09 +0800, David Crayford wrote: > >I've always liked the nice abstraction with the z/OS C/C++ FILE I/O >implementation. fopen() is a factory function which returns a >semi-opaque structure with two function pointers to read/write routines >(methods) which handle all >the different access methods (QSAM, BSAM, VSAM, UNIX, Hiperspaces etc). >It's a good design and an example of OO done well in C using pointers in >structs ;). > In fact, in Assembler the DCB has much this character. OPEN updates the DCB by adding pointers to the access method entry points.
Alas, IBM developers abandoned this paradigm. One writes to the operator's console not using QSAM, but WTO; one writes to the TSO terminal not using QSAM to SYSTSPRT, but TPUT. And I believe I have evidence that FTP given the DD: construct does not Do the Right Thing of OPENing a DCB on that DDNAME, but chases control blocks to suss out the underlying object and performs its own allocation, probably thwarting any attempt of the caller to override attributes, etc. On Wed, 26 Jun 2013 07:33:40 -0400, Shmuel Metz (Seymour J.) wrote: > >>What went wrong? > >It started early: George Mealy is alleged to have called it "The rape >of the design integrity of OS/360" and blamed it on a lack of >standards enforcement. -- gil ---------------------------------------------------------------------- For IBM-MAIN subscribe / signoff / archive access instructions, send email to [email protected] with the message: INFO IBM-MAIN
