[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
gnubol: Fw: (long) - What's new ???
Although it is long, I thought I would pass this full note (that I just put
out in comp.lang.cobol) on to the GNU group.
William M. Klein <wmklein@nospam.netcom.com> wrote in message news:...
> Given some of the recent comments (in comp.lang.cobol), I thought I would
> "cut-and-paste" a complete list (from CD 1.7) of the "Substantive Changes
NOT
> Affecting" annex from the current draft revision. (Basically, this is a
> complete list of enhancements - or "What's new" in the draft Standard).
>
> This is a LONG (145 items) list:
>
> D.2 Substantive changes not affecting existing programs
>
> 1) ACCEPT screen. The ACCEPT statement is extended to allow a screen item
> specified in the screen section to be used for operator input at a
terminal.
>
> 2) ACCEPT statement. The capability to access the four-digit year of the
> Gregorian calendar is added to the ACCEPT statement.
>
> 3) Apostrophe as quotation symbol. The apostrophe character as well as the
> quotation mark may be used in the opening and closing delimiters of
> alphanumeric, boolean, and national literals. A given literal may use
either
> the apostrophe or the quotation mark, but both the starting and ending
> characters are required to be the same. Whichever character is used, it is
> necessary to double that character to represent one occurrence of the
> character within the literal. Both formats may be used in a single source
> element.
>
> 4) ARITHMETIC clause. The STANDARD phrase specifies that certain arithmetic
> will be performed in a well-defined manner and may yield results that are
> portable. When standard arithmetic is in effect there is no restriction on
> composite of operands.
>
> 5) Arithmetic operators. No space is required between a left parenthesis
and
> unary operator or between a unary operator and a left parenthesis.
>
> 6) AT END phrase. The AT END phrase does not have to be specified if there
is
> no applicable USE statement.
>
> 7) BINARY and floating point data. Two new representations of numeric data
> type are introduced, a binary representation which holds data in a
> machine-specific way and is not restricted to decimal ranges of values, and
a
> floating-point representation. The floating-point type exists both in a
> numeric form, with a machine-specific representation, and in a
numeric-edited
> form.
>
> 8) Bit/boolean support. The capability of defining bit strings and setting
or
> testing boolean values is added. Data of class and category boolean may be
> represented as bits, alphanumeric characters, or national characters by
> specifying usage bit, display, or national, respectively. Boolean data
items
> are specified by picture character strings containing the symbol '1';
boolean
> literals are identified by a separator B", B', BX", or BX'. Boolean
> operations B-XOR, B-AND, B-OR, and B-NOT are provided for use in boolean
> expressions.
>
> 9) Boolean functions. The following intrinsic functions are provided for
> processing boolean items:
> BOOLEAN-OF-INTEGER and INTEGER-OF-BOOLEAN. These functions convert
> between numeric and boolean items.
>
> 10) CALL argument level numbers. CALL arguments may be elementary or groups
> with any level number. Formerly, they had to be elementary or have a level
> number of 1 or 77.
>
> 11) CALL BY CONTENT parameter difference. A parameter passed by content
does
> not have to have the same description as the matching parameter in the
called
> program.
>
> 12) CALL parameter defined with OCCURS DEPENDING ON. For an argument or
> formal parameter defined with OCCURS DEPENDING ON, the maximum length is
> used.
>
> 13) CALL parameter length difference. The size of a parameter in the USING
> phrase of the CALL statement may be larger than the size of the matching
> parameter in the called program. Formerly, the sizes were required to be
the
> same.
>
> 14) CALL recursively. The capability of calling an active COBOL program has
> been added to COBOL.
>
> 15) CALL statement. Arithmetic expressions and literals may be used as
> arguments of the CALL statement.
>
> 16) Class condition test with alphabet-name. The content of a data item can
> be tested against the coded character set named as alphabet-name.
>
> 17) COBOL word. The maximum length of a COBOL word is increased from 30 to
31
> characters.
>
> 18) COBOL words reserved in context. Certain words added to the COBOL
> standard are reserved only in the contexts in which they are specified and
> were not added to the reserved word list.
>
> 19) CODE clause. The identifier phrase is provided in the CODE clause in
the
> report description entry.
>
> 20) Predefined alphabet-names UCS-2, UCS-4, UTF-8, and UTF-16 are added to
> the SPECIAL-NAMES paragraph for referencing ISO/IEC 10646-1. A predefined
> alphabet, UCS-2, is added to the SPECIAL-NAMES paragraph for use in
> referencing ISO/IEC 10646-1 UCS-2 as a coded character set. Additional
> alphabet-names for national coded character sets can be defined by the
> implementor or by the programmer in the SPECIAL-NAMES paragraph.
>
> 21) CODE-SET clause. A code set defined with literals in the SPECIAL-NAMES
> paragraph can be specified in the CODE-SET clause for use in conversion on
> input and output of data.
>
> 22) CODE-SET clause. A CODE-SET clause may specify an alphabet defining a
> single-octet (alphanumeric) coded character set, such as ISO/IEC 646, and
> multiple-octet (national) coded character set, such as ISO/IEC 10646-1.
>
> 23) Collating sequences for national character data. A predefined alphabet,
> UCS-2, is added to the SPECIAL-NAMES paragraph for use in referencing an
> implementor-defined collating sequence associated with ISO/IEC 10646-1
UCS-2.
> Additional alphabet-names for national collating sequences can be defined
by
> the implementor or by the programmer in the SPECIAL-NAMES paragraph. For
each
> use of a collating sequence, language is provided for specifying either an
> alphanumeric collating sequence or a national collating sequence, or both.
>
> 24) COLUMN clause. A relative form is provided using PLUS integer, by
analogy
> with LINE; COLUMN RIGHT and COLUMN CENTER are provided, allowing alignment
of
> a printable item at the right or center; and COL, COLS, and COLUMNS are
> allowed as synonyms for COLUMN.
>
> 25) COLUMN, LINE, SOURCE and VALUE clauses. These clauses may have more
than
> one operand in a report group description entry.
>
> 26) Comment lines anywhere in a compilation group. Comment lines may be
> written as any line in a compilation group, including before the
> identification division header.
>
> 27) Common exception processing. The user may select exception checking for
> violations of general rules in the standard, such as subscripts out of
> bounds, reference modifiers out of bounds, CALL parameter mismatches, etc.
> This is enabled by the TURN compiler directive and changes to the USE
> statement.
>
> 28) Compiler directives. Compiler directives instruct the compiler to take
> specific actions during compilation.
>
> Compiler directives are provided:
> — to control the source listing
> — to request flagging of syntax that might be incompatible between the
> previous COBOL standard and the current standard
> — to specify page ejection
> — to cause propagation of an exception condition to an activating
runtime
> element
> — to specify whether the reference format of the source text that
follows
> is fixed-form or free-form
> — to turn checking for certain exception conditions on or off
> — to conditionally treat certain text lines as comments
> — to define values that may be used in constant entries in the data
> division
> — for specifying options that are defined by the implementor.
> – to allow for the reporting of leap seconds
>
> 28a) Computer-name in SOURCE-COMPUTER and OBJECT-COMPUTER paragraphs. The
> computer-name may be omitted even when additional clauses are specified.
>
> 29) Concatenation expression. A concatenation expression operates on two
> literals of the same class to concatenate their values.
>
> 30) Conditional compilation. Directives are provided to enable specific
lines
> of source to be included or omitted depending on the value of literals
> referenced in those directives.
>
> 31) Constants. The user may define constants in the data division with
> constant entries.
>
> 32) Control data-name. This is allowed to be omitted on TYPE CH/CF if only
> one control is defined.
>
> 33) Conversion from 2-digit year to 4-digit year. There are three functions
> for converting from a 2-digit year to a 4-digit year. DATE-TO-YYYYMMDD,
> DAY-TO-YYYYDDD, and YEAR-TO-YYYY convert from YYnnnn to YYYYnnnn, YYnnn to
> YYYYnnn, and YY to YYYY, respectively.
>
> 34) COPY statement. An alphanumeric literal may be specified in place of
> text-name-1 or library-name-1.
>
> 35) COPY statement. When more than one COBOL library is referenced,
text-name
> need not be qualified when the library text resides in the default library.
>
> 36) COPY statement. The ability to nest COPY statements is provided.
Library
> text incorporated as a result of processing a COPY statement without a
> REPLACING phrase may contain a COPY statement without a REPLACING phrase.
>
> 37) COPY statement. A SUPPRESS PRINTING phrase is added to the COPY
statement
> to suppress listing of library text incorporated as a result of COPY
> statement processing.
>
> 38) COPY and REPLACE statement partial word replacement. LEADING and
TRAILING
> phrases of the REPLACE statement and the REPLACING phrase of the COPY
> statement allow replacement of partial words in source text and library
text.
> This is useful for prefixing and postfixing names.
>
> 39) Cultural adaptability and multilingual support. Support is provided for
> using local conventions that depend on language and culture (cultural
> conventions). A "locale" contains the specification of cultural
conventions.
> Features supported are collating sequences, date and time formats, monetary
> and number formats, and character case mappings.
>
> 40) Cultural convention switching. The capability of switching the set of
> cultural conventions, known as locales, in effect at runtime is provided by
> the SET statement.
>
> 41) Currency sign extensions. The CURRENCY SIGN clause has been extended to
> allow for national characters and for multiple distinct currency signs,
which
> may have any length.
>
> 42) DISPLAY screen. The DISPLAY statement is extended to allow a screen
item
> specified in the screen section to be used for output to the operator of a
> terminal.
>
> 43) DISPLAY statement. If the literal in a DISPLAY statement is numeric, it
> may be signed.
>
> 44) Dynamic storage allocation. ALLOCATE and FREE statements are provided
for
> obtaining storage dynamically. This storage is addressed by data pointers.
>
> 45) EVALUATE statement, partial expressions. A partial expression may now
be
> used as a selection object in an EVALUATE statement. This partial
expression,
> when combined with its corresponding selection subject, forms a complete
> conditional expression.
>
> 46) EXIT statement. The ability to immediately exit an inline PERFORM
> statement, a paragraph, or a section has been added.
>
> 47) EXIT PROGRAM allowed as other than last statement. EXIT PROGRAM is
> allowed to appear as other than the last statement in a consecutive
sequence
> of imperative statements.
>
> 48) EXTERNAL AS literal. The option to specify a literal in the EXTERNAL
> clause was added for external names that are not valid COBOL words or need
to
> be case-sensitive.
>
> 49) File sharing. File sharing provides a cooperative environment that
allows
> the user to permit or deny access by concurrent file connectors to a
physical
> file.
>
> 50) FILLER. FILLER is allowed in the report section.
>
> 51) Fixed-form reference format area A and B removed. Areas A and B of the
> previous COBOL standard reference format have been combined into one area
> called the program-text area. Restrictions of area A and area B have been
> removed. The previous COBOL standard reference format is fully upward
> compatible.
>
> 52) Fixed-point numeric items. The maximum number of digits that may be
> specified in a numeric literal or in a picture character-string that
> describes a numeric or numeric-edited data item is increased from 18 to 31.
>
> 53) FLAG-85 directive. A directive, FLAG-85, has been added that causes
> compiler flagging of language elements that may be incompatible between the
> previous COBOL standard and this draft International Standard.
>
> 54) FORMAT clause. For sequentially-organized files, the FORMAT clause
> provides the capability to present data so that people may read it. This is
> called external media format; it includes any special encoding needed by
the
> operating environment to successfully print or display data, as might be
> needed for multiple-octet data, for example.
>
> 55) Free-form reference format. Free-form reference format provides
> varying-length source lines and permits source text and library text to be
> written with a minimum of restrictions on the placement of source code on a
> line. A compiler directive permits selection and intermixing of free-form
or
> fixed-form reference format, with fixed-form as the default.
>
> 56) FUNCTION keyword. The facility has been added to omit the word FUNCTION
> on the invocation of intrinsic functions.
>
> 57) Function use expanded. The restrictions that numeric and integer
> functions could be used only in arithmetic expressions was removed as well
as
> the restriction that no integer function could be used where an unsigned
> integer was required. Numeric and integer functions may now be used
anywhere
> a numeric sender is allowed and an integer form of the ABS function may now
> be used where an unsigned integer is required.
>
> 58) Global clause in the linkage section. The GLOBAL clause may be
specified
> in level 1 data description entries in the linkage section.
>
> 59) GOBACK statement. A GOBACK statement has been added that always returns
> control, either to the operating system or to the calling runtime element.
>
> 60) Hexadecimal Literals. The ability was added to specify alphanumeric,
> boolean, and national literals using hexadecimal (radix 16) notation.
>
> 61) HIGHEST-ALGEBRAIC and LOWEST-ALGEBRAIC functions. The HIGHEST-ALGEBRAIC
> and LOWEST-ALGEBRAIC functions provide the ability to manipulate numeric
data
> items in a manner similar to the means that HIGH-VALUES and LOW-VALUES
permit
> with alphanumeric data items, but without the risks of the data
> incompatibilities associated with those figurative constants.
>
> 62) Identification division header. The identification division header is
now
> optional.
>
> 63) Implementor-defined successful I-O status codes. A range of I-O status
> codes is allocated for use by the implementor to indicate conditions
> associated with successful completion of an input-output statement.
>
> 64) Implicit qualification of data-names within the same group. Data-names
> referenced in a data description entry need not be qualified when they are
> defined in the same group as the subject of the entry, unless qualifiers
are
> needed to establish uniqueness within that group
>
> 65) Inline comment. A comment may be written on a line following any
> character-strings of the source text or library text that are written on
that
> line. An inline comment is introduced by the two contiguous characters
'*>'.
>
> 66) Index data item. An index data item may be referenced as an argument in
a
> BYTE-LENGTH, LENGTH, MAX, MIN, ORD-MAX, or ORD-MIN function.
>
> 67) Index data item. The definition of an index data item may include the
> SYNCHRONIZED clause.
>
> 68) Initialization of tables. The VALUE clause may be used to initialize
> selected elements of a table to specific values.
>
> 69) INITIALIZE statement, FILLER phrase. FILLER data items may be
initialized
> with the INITIALIZE statement.
>
> 70) INITIALIZE statement, VALUE phrase. A VALUE phrase may be specified in
> the INITIALIZE statement to cause initialization of elementary data items
to
> the literal specified in the VALUE clause of the associated data
description
> entry.
>
> 71) INITIALIZE statement, variable-length tables. A variable-length table
may
> be initialized with the INITIALIZE statement.
>
> 72) INSPECT CONVERTING statement. A figurative constant beginning with ALL
> may be specified as the TO literal in the INSPECT CONVERTING statement.
>
> 73) INSPECT CONVERTING statement. The same character in the data item
> referenced by the identifier to the left of TO or the literal to the left
of
> TO may appear more than once. If a character is duplicated, the first
> occurrence is used in the substitution and any repetitions are ignored.
>
> 74) Intrinsic functions. New intrinsic functions are:
> ABS
> BOOLEAN-OF-INTEGER
> BYTE-LENGTH
> CHAR-NATIONAL
> DATE-TO-YYYYMMDD
> DAY-TO-YYYYDDD
> DISPLAY-OF
> E
> EXCEPTION-FILE
> EXCEPTION-LOCATION
> EXCEPTION-STATEMENT
> EXCEPTION-STATUS
> EXP
> EXP10
> FRACTION-PART
> HIGHEST-ALGEBRAIC
> INTEGER-OF-BOOLEAN
> LOCALE-COMPARE
> LOCALE-DATE
> LOCALE-TIME
> LOWEST-ALGEBRAIC
> NATIONAL-OF
> NUMVAL-F
> PI
> SIGN
> STANDARD-COMPARE
> TEST-DATE-YYYYMMDD
> TEST-DAY-YYYYDDD
> TEST-NUMVAL
> TEST-NUMVAL-C
> TEST-NUMVAL-F
> YEAR-TO-YYYY
>
> 75) INVALID KEY phrase. The INVALID KEY phrase does not have to be
specified
> if there is no applicable USE statement.
>
> 76) ISO/IEC 10646-1 amendments. The four-octet version (UCS-4) and the
> Universal Transformation Formats (UTF-8 and UTF-16) of the Universal
> Multiple-Octet Coded Character Set are supported as alphabets in the
> SPECIAL-NAMES paragraph. These alphabets may be used for input and output
> conversion and as collating sequences.
>
> 77) Local-storage section. A facility was added to define data that are set
> to their initial values each time a function, method, or program is
> activated. Each instance of this source element has its own copy of these
> data.
>
> 78) National character handling. The capability is added for using large
> character sets, such as ISO/IEC 10646-1:1993, in source text and library
text
> and in data at execution time. Class national and categories national and
> national-edited are specified by picture character-strings containing the
> symbol 'N'; national literals are identified by a separator N", N', NX", or
> NX'. Usage national specifies representation of data in a national
character
> set. User-defined words may contain extended letters from the universal
> multiple-octet coded character set, ISO/IEC 10646-1. Processing of data of
> class national is comparable to processing data of class alphanumeric,
though
> there are some minor differences. Conversions between data of classes
> alphanumeric and national are provided by intrinsic functions.
>
> 79) Object orientation. Support for object oriented programming has been
> added.
>
> 80) OCCURS clause. Repetition vertically or horizontally and a STEP phrase
> are added for report writer.
>
> 81) OCCURS clause, KEY phrase. An entry between a data description entry
that
> contains an OCCURS clause and the entry describing a data item referenced
in
> the KEY phrase of the OCCURS may itself contain an OCCURS clause, as long
as
> it is not a group item in the hierarchy of the data item referenced in the
> KEY phrase.
>
> 82) Optional word OF. Allowed after SUM.
>
> 83) Optional words FOR and ON. Allowed after TYPE CH or CF.
>
> 84) OR PAGE phrase of the CONTROL HEADING phrase. This enables the control
> heading group to be printed at the top of each page as well as after a
> control break.
>
> 85) PAGE FOOTING report group. Such a group is allowed to have all relative
> LINE clauses.
>
> 86) PAGE LIMIT clause. New COLUMNS phrase is provided to define maximum
> number of horizontal print positions in each report line and a LAST CONTROL
> HEADING phrase was added.
>
> 87) Paragraph-name. A paragraph-name is not required at the beginning of
the
> procedure division or a section.
>
> 88) PERFORM statement. The AFTER phrase is allowed in an inline PERFORM.
>
> 89) PERFORM statement. A common exit for multiple active PERFORM statements
> is allowed.
>
> 90) PERFORM VARYING statement. The BY value may be 0, the FROM value is not
> required to correspond to a table element at the start of the execution of
> the PERFORM statement, and augmentation on an index can produce a value
> outside of the range of the associated table.
>
> 91) PICTURE clause. The maximum number of characters that may be specified
in
> a picture character-string is increased from 30 to 50.
>
> 92) PICTURE clause. The content of a character position described with the
> picture symbol ‘A’ is not required to be a letter except in the format
stage
> of a VALIDATE statement.
>
> 93) PICTURE clause. The PICTURE clause may be omitted when the VALUE clause
> in a data description or report group description entry is specified with
an
> alphanumeric, boolean or national literal.
>
> 94) PICTURE clause. The symbol ":" can be used as an insertion character in
a
> PICTURE character-string.
>
> 95) PICTURE clause. The currency symbol may be specified at the end of a
> PICTURE character-string.
>
> 96) PICTURE clause. The symbol '1' can be used in a PICTURE
character-string
> to specify a boolean data item.
>
> 97) PICTURE clause. The symbol 'E' can be used in a PICTURE
character-string
> to specify a floating-point numeric-edited data item.
>
> 98) PICTURE clause. The symbol 'N' can be used in a PICTURE
character-string
> to specify a national or a national-edited data item.
>
> 99) PLUS and MINUS. The symbol + or - is synonymous with PLUS or MINUS,
> respectively, in the COLUMN and LINE clauses.
>
> 100) Pointer data. A new class of data type is introduced, a pointer type
> which holds data and program addresses in a machine-specific or
> system-specific way.
>
> 101) PRESENT WHEN clause. The PRESENT WHEN clause allow lines and printable
> items, or groups of them, to be printed or not, depending on the truth or
> falsehood of a condition.
>
> 102) Program-names as literals. The option to specify a literal as the
> program-name to be externalized was added for names that are not valid
COBOL
> words or need to be case-sensitive.
>
> 103) Program prototypes. The interface and characteristics of a program are
> defined in a program-prototype. This permits passing parameters by value,
> omission of parameters, type checking and coercion of arguments, and the
use
> of calling conventions other than those used by default for COBOL.
>
> 104) Qualification of index-names. Index-names may be qualified in the same
> manner as data and condition-names, even in cases where uniqueness of
> reference may already be established.
>
> 105) READ PREVIOUS. The READ statement has been enhanced to allow reading
the
> record prior to that pointed to by the file position indicator.
>
> 106) RECORD KEY and ALTERNATE RECORD KEY. Keys for indexed files may be
made
> up from more than one component.
>
> 107) Record locking. Record locking allows control of record access for
> shared files. A record lock is used to prevent access to a record from
other
> file connectors.
>
> 108) REDEFINES clause. Redefinitions may be specified in any order. The
rule
> requiring that the redefinition with the greatest length be specified first
> has been deleted.
>
> 109) RELATIVE KEY clause. A RELATIVE KEY clause may be specified by itself
in
> a file control entry. Previously, RELATIVE KEY was required to be specified
> as a phrase of the ACCESS MODE clause.
>
> 110) REPLACE statement syntax relaxation. A REPLACE statement may be
> specified anywhere in a compilation unit that a character-string or a
> separator, other than the closing delimiter of a literal, may appear.
> Previously, a REPLACE statement was required to follow a separator period
> when it was other than the first statement in an outermost program.
>
> 111) REPLACE statement nesting. A REPLACE statement may be specified and
> terminated without canceling the effect of a previous REPLACE statement.
>
> 112) Report writer. Previously, the report writer was a separate module and
> its implementation was optional. The report writer facility is integrated
> into the specification and it shall be implemented by a conforming
> implementation. In addition, the following changes were made and are
> documented elsewhere in the list of substantive changes not affecting
> existing programs:
>
> — CODE IS identifier added
> — COLUMN clause has several additions
> — COLUMN, LINE, SOURCE, and VALUE clauses are allowed to have more than
> one operand
> — Control data-name can be omitted
> — FILLER allowed in report section
> — National characters are allowed in reports
> — OCCURS allows repetition vertically or horizontally and a STEP phrase
> — Optional words OF, FOR, and ON in some clauses
> — OR PAGE phrase of CONTROL HEADING phrase
> — PAGE FOOTING allowed to have only relative LINE clauses
> — PAGE LIMIT includes COLUMN phrase
> — PLUS or MINUS can be the symbol '+' or '-', respectively
> — PRESENT WHEN clause added
> — SIGN clause does not require SEPARATE phrase in report section
> — SOURCE allows arithmetic expressions and functions and a ROUNDED
phrase
> — SUM clause has many changes
> — USE BEFORE REPORTING changed
> — VARYING clause may be used with an OCCURS clause or a multiple LINE
or
> multiple COLUMN clause
> — WITH RESET phrase added to NEXT PAGE
>
> 113) Report writer national character support. The capability of printing
> national characters and alphanumeric characters in a report is provided for
> both a monospaced font and a proportional font. The implementor defines the
> proportional font or fonts supported.
>
> 114) SAME AS clause. The SAME AS clause indicates that the description of a
> data item is identical to that of another item.
>
> 115) Screen section. The screen section provides a non-procedural means of
> declaring screen items that are to appear on a terminal, their position,
and
> various attributes. The screen items may be used for input or output and be
> associated with data items described in other sections within the data
> division.
>
> 116) SELECT clause. A file may be dynamically assigned by specifying a
> data-name in the SELECT clause.
>
> 117) SELECT WHEN clause. The SELECT WHEN clause of a record description
> permits selection of one of several record description entries in the file
> section during input-output operations. The selected record description
entry
> is used with a CODE-SET clause or a FORMAT clause to process individual
data
> items in a record.
>
> 118) SET index-name. The result of setting an index can be outside of the
> range of the associated table. Also, the setting of an index in the TO
phrase
> does not have to be within the range of the associated table.
>
> 119) SET screen-name. The SET statement is extended to allow screen item
> attributes to be dynamically specified.
>
> 120) SIGN clause in a report description entry. The SEPARATE phrase is no
> longer required in a report description entry and the SIGN clause may be
> specified at the group level.
>
> 121) SIGN clause on group items. A sign clause may be specified on any
group
> item. Formerly, the group had to contain at least one numeric item.
>
> 122) SORT statement. A SORT statement may be used to sort a table. This
sort
> may be done using the fields specified in the KEY phrase defining the
table,
> by using the entire table element as the key, or by using specified key
data
> items.
>
> 123) SORT statement. GIVING files in a SORT statement may now be specified
in
> the same SAME RECORD AREA clause.
>
> 124) SOURCE clause in a report description entry. The sending operand may
be
> a function-identifier.
>
> 125) SOURCE clause in a report description entry. An arithmetic-expression
is
> allowed as operand and a ROUNDED phrase was added.
>
> 126) START FIRST, LAST, and LESS THAN. The START statement has been
enhanced
> to allow starting to a position before the key and to point to the first or
> last record in the file.
>
> 127) START and sequential files. The START statement has been enhanced to
> allow a sequential file if the FIRST or LAST phrase is specified.
>
> 128) STOP WITH STATUS. The WITH STATUS phrase was added to the STOP
statement
> to allow a run unit to return a value to the operating system, giving
> programmatic control and standardization of termination codes.
>
> 129) STRING statement. The DELIMITED phrase is optional in the STRING
> statement. DELIMITED BY SIZE is assumed.
>
> 130) Subscripting with arithmetic expressions. An arithmetic expression may
> now be used as a subscript, not just the forms data-name + integer and
> data-name - integer.
>
> 131) SUM clause in a report description entry. The SUM clause was extended
in
> the following ways:
> — Extension to total a repeating entry.
> — Now allowed in any TYPE of report group, not only control footing.
> — SUM of arithmetic-expression format.
> — Checks for overflow of a sum counter during totalling.
> — Any numeric report section item may be totalled, not just another sum
> counter.
> — ROUNDED phrase.
>
> 132) THROUGH phrase in VALUE clause and EVALUATE statement. A collating
> sequence can be identified in the THROUGH phrase for use in determining a
> range of values. This allows use of portable ranges across various
> implementations. It also allows the range to be determined from a locale,
> which may not be portable when different locales are used.
>
> 133) TYPE, and TYPEDEF clauses. The TYPEDEF clause identifies a type
> declaration which creates a user-defined type. The TYPE clause is used to
> apply this user-defined type to the description of a data item. No storage
is
> allocated for the type declaration.
>
> 134) Underscore (_) character. The basic special characters of the COBOL
> character repertoire have been expanded to include the underscore (_)
> character that can be used in the formation of COBOL words.
>
> 135) UNSTRING statement. The sending operand may be reference modified.
>
> 136) USE BEFORE REPORTING. Effect of GLOBAL in a report description and a
USE
> declarative further elucidated.
>
> 137) User-defined functions. The ability was added to write functions that
> are activated in a manner similar to intrinsic functions. The word FUNCTION
> is not specified as part of this invocation.
>
> 138) Validate facility. The new statement VALIDATE was added, giving the
> ability to perform comprehensive data validation. The new data division
> clauses ALLOW, CLASS, DEFAULT, DESTINATION, ERROR, INVALID, PRESENT WHEN,
> VARYING were also added, with the PRESENT WHEN and VARYING clauses having a
> similar function to those in the report section. These clauses, together
with
> the VALID, INVALID and WHEN
> phrases of the level-88 VALUE clause, are ignored when they appear in a
data
> description which is the operand of any statement other than VALIDATE.
>
> 139) VALUE clause, WHEN SET TO FALSE phrase in data division. The WHEN SET
TO
> FALSE phrase allows specification of a FALSE condition value. This value is
> moved to the associated conditional variable when the SET TO FALSE
statement
> is executed for the associated condition-name.
>
> 140) VALUE clause ignored in external data items and in linkage and file
> sections. A VALUE clause may be specified in data descriptions in the
linkage
> section and in the file section and for items described with the EXTERNAL
> clause, and is ignored except in execution of the INITIALIZE statement.
>
> 141) VALUE clause for condition-name entry. The VALUE clause in the
> condition-name entry was syntactically enhanced to allow the specification
of
> VALUE ARE and VALUES IS.
>
> 142) A VARYING clause is provided in the validate and report writer
> facilities to be used in conjunction with an OCCURS clause.
>
> 143) WITH RESET phrase. This was added to the NEXT PAGE phrase of the NEXT
> GROUP clause, to reset PAGE-COUNTER back to 1.
>
> 144) Writing literals to a file. A record can be written from a literal
using
> the WRITE, RELEASE, or REWRITE statement. Using the FILE phrase of WRITE,
> alphanumeric, national, and boolean literals and the figurative constant
> SPACE can be written. When the FILE phrase is not used, any literal can be
> written.
>
> 145) Writing without a record-name. A FILE phrase on the WRITE and REWRITE
> statements permit writing records from working storage without having a
> corresponding record description entry in the file section.
>
>
> --
> Bill Klein
> wmklein <at> ix dot netcom dot com
>
>
--
This message was sent through the gnu-cobol mailing list. To remove yourself
from this mailing list, send a message to majordomo@lusars.net with the
words "unsubscribe gnu-cobol" in the message body. For more information on
the GNU COBOL project, send mail to gnu-cobol-owner@lusars.net.