Advantages of the Enterprise COBOL for z/OS compilers and z/OS Language Environment runtime
The Enterprise COBOL compiler and Language Environment® run time provide
additional functions over OS/VS COBOL, VS COBOL II, and IBM® COBOL. Table 1 lists the advantages of the new compiler
and run time and indicates whether they apply to VS COBOL II, OS/VS
COBOL, IBM COBOL,
or all three.
Advantage | Notes | Advantage over | ||
---|---|---|---|---|
OS/VS COBOL | VS COBOL II | IBM COBOL | ||
XML support | Enterprise COBOL provides new statements for parsing and generating XML documents. These statements allow programs to transform XML content into COBOL data structures and COBOL data structures into XML documents. | X | X | X |
Java™ interoperation | Enterprise COBOL includes object-oriented COBOL syntax that enables COBOL to interoperate with Java. This Java interoperation is also supported under IMS. | X | X | X |
Support to run in multiple threads | Enterprise COBOL has a toleration level of support for POSIX threads and signals. With Enterprise COBOL, an application can contain COBOL programs running on multiple threads within a process. | X | X | X |
Support for Unicode | The COBOL Unicode support uses the product z/OS Support for Unicode. | X | X | X |
Improved Db2® function | Enterprise COBOL includes support for Db2 stored procedures. | X | X | |
Support for the Db2 coprocessor | X | X | * | |
Improved CICS® function | Enterprise COBOL includes CALL statement support (for faster CICS performance than when using EXEC CICS LINK) and eliminates the need for user-coded BLL cells. | X | ||
Increased WORKING-STORAGE space for DATA(24) and DATA(31) programs. For DATA(31), the limit is 2 GB. For DATA(24), the limit is the available space below the 16-MB line. | X | X | X | |
Support for the Integrated CICS translator | X | X | * | |
JSON support | In Enterprise COBOL V6.1,
support for generation of JSON texts Starting in Enterprise COBOL V6.2, support for both generation and parsing of JSON texts |
X | X | X |
Usability enhancements | These enhancements include:
|
X | X | X |
COBOL language improvements | Ability to perform math and financial functions in COBOL, using Intrinsic Functions. You can replace current routines written in FORTRAN or C with native COBOL code, thus simplifying your application logic. | X | X | |
Above-the-line support | Virtual Storage Constraint Relief (VSCR) allows your programs to reside, compile, and access programs below or above the 16-MB line. | X | ||
QSAM buffers can be above the 16-MB line for optimal support of DFSMS and data striping. | X | X | ||
COBOL EXTERNAL data can now be above the line. | N/A | X | ||
31-digit support | Enterprise COBOL added support for numbers up to 31 digits when the ARITH(EXTEND) option is used. | X | X | * |
z/OS® UNIX system services support | The cob2 command can be used to compile and link COBOL programs in the z/OS UNIX shell. COBOL programs can call most of the C language functions defined in the POSIX standard. | X | X | |
Error recovery options | Programmers now have the ability to have application-specific error-handling routines intercept program interrupts, abends, and other software-generated conditions for error recovery. This is done using Enterprise COBOL programs with Language Environment callable services to register the user-written condition handlers. Language Environment handles all condition management. | X | X | |
High-precision math routines | Using Language Environment callable services, your programs can return the most accurate results. | X | X | |
Support for multiple MVS tasks | RES applications can now execute independently under multiple MVS tasks. (For example, running two Enterprise COBOL programs at the same time from ISPF split screens.) | X | X | |
Performance | Faster arithmetic computations | X | ||
Faster dynamic and static CALL statements | X | |||
Improved performance of variable-length MOVEs | X | |||
Faster CICS performance if using the Language Environment CBLPSHPOP runtime option to prevent PUSH HANDLE and POP HANDLE for CALL statements. | X | |||
Improved performance for programs compiled with TRUNC(BIN). COBOL for OS/390® & VM Release 2 added support to generate more efficient code when the TRUNC(BIN) compiler option is used. | N/A | X | ||
Improved ILC | With the common Language Environment library, ILC is improved between COBOL and other Language Environment-conforming languages. For example, interlanguage calls between COBOL and other languages are faster under Language Environment, because there is significantly less overhead for each CALL statement. Additionally, under CICS, you can use the CALL statement to call PL/I or C programs in place of EXEC CICS LINK. | X | X | |
Character manipulation | Improved bit and character manipulation using hex literals. Improved flexibility with character manipulation using reference modification | X | ||
Top-down modular program development | Support for top-down modular program development through nesting of programs and improved CALL and COPY functions | X | ||
Structured Programming Support | Support for structured programming
coding through:
|
X | ||
85 COBOL Standard conformance | Support for 85 COBOL Standard | X | ||
Support for Amendment 1 (Intrinsic Functions Module) of 85 COBOL Standard | X | X | ||
Subsystem support | Improved support for IMS, ISPF, DFSORT, Db2, WAS | X | ||
Support for reentrancy | All OS/VS COBOL programs are nonreentrant. Only reentrant programs can be loaded into shared storage (LPA or Shared Segments). | X | ||
Support for Debug Tool | Debug Tool provides the
following benefits:
|
X | X | |
For COBOL for OS/390 &
VM and later programs only:
|
X | X | ||
For Enterprise COBOL Version 4 or
later programs:
|
X | X | X | |
Runtime options | ABTERMENC and TERMTHDACT- allow you to control error behavior. | X | X | |
CBLQDA - allows you to control dynamic allocation of QSAM files. | X | |||
LANGUAGE - allows you to change language of runtime error messages. | X | |||
RPTSTG - allows you to obtain storage usage reports. | X | |||
Storage options - allow you to control where storage is obtained and the amount of storage used. | X | X | ||
Compiler options for Enterprise COBOL 5 and 6 | There have been many changes to compiler options and suboptions for Enterprise COBOL 5 and 6. For details about those changes, see Compiler option changes in Enterprise COBOL 5 and 6. | X | X | X |
Compiler options for Enterprise COBOL Version 4 | The following compiler options are
available to Enterprise COBOL Version
4 programs and later programs only:
|
X | X | X |
Compiler options for Enterprise COBOL Version 3 | The following compiler options are
available to Enterprise COBOL Version
3 and later programs only:
|
X | X | X |
Compiler options for COBOL for OS/390 & VM | The following compiler options are
available to COBOL for OS/390 &
VM and later programs only:
|
X | X | |
Compiler options for COBOL for MVS & VM | The following compiler options are
available to COBOL for MVS &
VM and later programs:
|
X | X | |
* The integrated Db2 coprocessor, integrated CICS translator, and 31-digit support were added as new features to COBOL for OS/390 & VM, Version 2 Release 2. |