About JCL, Paul Gilmartin wrote:
" . . . Its objectives make JCL more like a macro processor than a programming language, but it failed to incorporate much of the current assembler's macro processing capability, and neither JCL nor HLASM conditional assembly has graceful branching nor [sic] clean iteration." Statements of this sort are and should be constitutionally protected, but this one is without much redeeming technical merit. JCL has been criticized by those who have not mastered it since the time of OS PCP. Its syntax, borrowed from that of then current assemblers, is said to be "difficult to learn", for reasons that I have never understood; but it is not indefensible. In particular, it is more powerful than the alternatives to it that I have seen. He begins here by attempting to distinguish a macro processor and a programming language, implying it would seem that a macro processor is not a programming language; but he then proceeds immediately to criticize, a little ungrammatically but unambiguously enough, both JCL and the HLASM as lacking two of the important attributes of programming languages, viz., "graceful branching" and "clean iteration". Now grace and cleanliness are in the eyes of their beholders. Consider |&baid setc '&macname'.'__boolean_array__' | gblb &(&baid)(1) |&nbae seta n'&(&baid) |&i seta 0 |.reiz_loop anop |&i seta &i+1 |&eoa setb (&i gt &nbae) | aif (&eola).reiz_lend |&(&baid)(&i) setb 0 | ago .reiz_loop |.reiz_lend anop This HLASM macro-language statement group resets the elements of an array of created global binary/boolean set symbols to their default value, boolean 0. Someone unfamiliar with the HLASM macro language would find it unintelligible; and there is a familiar, now tedious perspective from which it is judged long-winded and/or detail-ridden; but there is nothing unclean about it. Examples of this sort could be proliferated ad infinitum et nauseam, but they would not persuade Mr. Gilmartin to my views, and that is as well. What distresses me about these views is not their substance, with which I expect usually to disagree. It is his perspective. He judges that his needs, which I often judge to be whims, should be satisfiable all but immediately, without much programming, by a tool that he is using and that the machinery employed to do so should conform to his particular, municipal notions of cleanliness and grace. These requirements ensure that he will always be dissatisfied with every tool he uses that was designed and implemented by others. We are all creatures of our own very different experiences. John Gilmore Ashland, MA 01721-1817 USA _________________________________________________________________ Hotmail: Trusted email with powerful SPAM protection. http://clk.atdmt.com/GBL/go/177141665/direct/01/ ---------------------------------------------------------------------- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO Search the archives at http://bama.ua.edu/archives/ibm-main.html