Adjacent 01 levels have been used to allocate storage larger than the maximum allowed by COBOL.
On Sat, 21 Sep 2013 20:18:53 -0300 Clark Morris <cfmpub...@ns.sympatico.ca> wrote: :>On 20 Sep 2013 08:12:42 -0700, in bit.listserv.ibm-main John Gilmore :>wrote: :> :>>The idea of eliminating unreferenced variables in COBOL record :>>declarations is of course absurd, and fulminations against it are at :>>best otiose. It is always possible to construct quietist arguments :>>against change, any and all change; but this straw man is too :>>obviously so to very useful to careerist obstructionists. :> :>Basically all COBOL can do is eliminate unreferenced 77 levels which :>are independent (not in a structure and logically equivalent to 01 :>levels or records) and unused 01 (records) levels in Working-Storage. :>This may also apply to LOCAL-STORAGE. While fields within a record :>may be unused, eliminating them changes the structure and can cause :>problems. In one sense are we straining at gnats in an era when :>people send megabyte size pictures to each other over the Internet and :>product files may contain 1 or more pictures of each product? I agree :>with people that crud should be eliminated but changing record :>structures which may be used in multiple programs can have interesting :>results. :> :>Clark Morris :>> :>>We are left with working-storage and local-storage declarations for :>>variables that then go unused. In many cases they were once used, but :>>maintenance changes have made them redundant. In any case they may be :>>eliminated safely, and they should be when an occasion to do so :>>arises. They are individually ugly; and they add to source-program :>>clutter, which is substantial in old COBOL programs. :>> :>>Whether a major undertaking, a formal project or the like, for their :>>elimination is jusitified is another, very different question. I :>>think not. All optimizing compilers eliminate dead code, sequences of :>>instructions that can never be executed, and dead variables, which are :>>never referenced. :>> :>>Some compilers and backends are better at these operations than :>>others. The current IBM C/C++ and PL/I backend, for example, detects :>>almost all aliasing schemes and even reflects these 'obscured' :>>references in its XREF output. The current COBOL compiler does a :>>modest but adequate job of this when full optimization is used. There :>>is therefore almost no resource-savings argument to be made for a :>>campaign to eliminate unreferenced variables; and further :>>bureaucratization of this particular programming milieu is highly :>>undesirable. :>> :>>John Gilmore, Ashland, MA 01721 - USA :>> :> :>---------------------------------------------------------------------- :>For IBM-MAIN subscribe / signoff / archive access instructions, :>send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN -- Binyamin Dissen <bdis...@dissensoftware.com> http://www.dissensoftware.com Director, Dissen Software, Bar & Grill - Israel Should you use the mailblocks package and expect a response from me, you should preauthorize the dissensoftware.com domain. I very rarely bother responding to challenge/response systems, especially those from irresponsible companies. ---------------------------------------------------------------------- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN