|
| William M. Klein wrote:
> "LX-i" <lxi0007@netscape.net> wrote in message
> news:GIqdnW9gzIumOJTanZ2dnUVZ_oKhnZ2d@co
mcast.com...
> <snip>
>
> Each Standard (or at least all the ones that I know about - I have never
> "studied" the '68 and only glanced at an "offical" '74) includes a section
> called
>
> "Substantive Changes potentially affecting existing programs"
>
> These DO include cases where "old syntax" can give "new results". Usually these
> are due to interpretation requests (usually places where the old standard didn't
> say what people wanted/expected).
That makes sense...
> One example, in the '02 Standard was what a program needed to do if a divide by
> zero occured in an arithmetic statement and no "ON SIZE ERROR" phrase was
> specified. By "mistake" (according to many) the '85 Standard was interpreted as
> REQUIRING a conforming implementation to "silently continue" on after such
> statements. Many implementations had "always" ABENDed or "abnormally
> terminated" at such times. The '02 Standard changed the wording to ALLOW this to
> happen in a conforming implementation - but this was a change from the previous
> Standard.
That too makes sense. The people that wrote it know what they meant,
but if they don't express it clearly enough, others don't get that
insight. Of course, there's also the desire of some folks to see
something in particular, especially when their compiler already works
that way. :)
> The classic example between the '68 and '74 Standard was how to interprete
> certain combined abrreviated expressions with NOT in them, e.g.
> A = B AND NOT LESS THAN C OR D
>
> in the '68 Standard was equivalent to
> ((A = B) AND NOT (A < C) OR (A < D))
>
> in the '74 (and later) standards it is equivalent to
> ((A = B) AND (A NOT < C) OR (A NOT < D))
>
> I won't go into the history of how/why this happened, but this is the type of
> thing that DOES happen between Standards - and that is "so documented".
Yikes! That's a horrendous construct to begin with... But, I also
realize that I came to COBOL *way* late in the game, so I have the
perspective of learning from what others have done. I first saw COBOL
in February of 1998. :)
Are you familiar with the rationale regarding combining EXAMINE,
INSPECT, and TRANSFORM? I had forgotten about transform - and the
syntax seemed a bit more intuitive to me. Of course, they trained us on
COBOL 85, but then put us in a COBOL 74 shop - so, we didn't learn a
whole lot about the features that had been removed in the 85 standard.
Was it just an attempt to reduce the number of reserved words? Why not
keep EXAMINE and TRANSFORM and ditch INSPECT? :)
--
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
~~~~~~~~~~~~~~~~~~~~~~~~~~~
~ / \/ _ o ~ Live from Albuquerque, NM! ~
~ _ /\ | ~ ~
~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~
~ Business E-mail ~ daniel @ "Business Website" below ~
~ Business Website ~ http://www.djs-consulting.com ~
~ Tech Blog ~ http://www.djs-consulting.com/linux/blog ~
~ Personal E-mail ~ "Personal Blog" as e-mail address ~
~ Personal Blog ~ http://daniel.summershome.org ~
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
~~~~~~~~~~~~~~~~~~~~~~~~~~~
GEEKCODE 3.12 GCS/IT d s-:+ a C++ L++ E--- W++ N++ o? K- w$ !O M--
V PS+ PE++ Y? !PGP t+ 5? X+ R* tv b+ DI++ D+ G- e h---- r+++ z++++
"Who is more irrational? A man who believes in a God he doesn't see,
or a man who's offended by a God he doesn't believe in?" - Brad Stine
|
|