Compiler generates XML for PL/I structures.

Press Release Summary:



Enterprise PL/I v3.3 offers additional features, compatibility with prior PL/I compilers, and debug support. Compiler uses ED and EDMK instructions for inlined numeric conversions to PICTURE and CHARACTER and generates code for conversion from FIXED DECIMAL to PICTURE with trailing overpunch characters. Additional functions include LAXDEF suboption of RULES compiler, FLOATINMATH compiler option, and MEMINDEX, MEMSEARCH, and MEMVERIFY built-in functions.



Original Press Release:



IBM Enterprise PL/I for z/OS V3.3 Integrates PL/I and Web-Oriented Business Processes



Overview

Enterprise PL/I V3.3 enables developers to leverage more than 30 years' worth of applications in new endeavors. This compiler gives you the needed PL/I function to begin to integrate both PL/I and Web-oriented business processes.

New in this release:

o Ability to generate XML for PL/I structures

o Improved application performance

o Compatibility improvements with prior PL/I compilers to ease migration

o Improved debug support

o Other usability enhancements

Key prerequisites

z/OS® V1.2 (5694-A01), or later

Note: Applications compiled with Enterprise PL/I for z/OS V3.3 can run on the following:

z/OS V1.1 (5694-A01), or later

OS/390® V2.10 (5647-A01), or later

Depending on the function used, certain levels of other programs may be required.

Planned availability date

October 31, 2003

For ordering, contact:

Your IBM representative, an IBM Business Partner, or the Americas Call Centers at 800-IBM-CALL (Reference: LE001).

Description

Compiler enhancements
Ability to generate XML for PL/I structures: A new built-in function has been added that will write XML with the names and values of the elements of a referenced structure to a buffer and return the number of bytes written. This XML can then be passed to other applications, including code using the PL/I SAX parser, which want to consume it.

Improved performance
The compilation time under OPT(2) will be significantly less than under Enterprise PL/I V3.2, especially for large programs.

The compiler now uses the ED and EDMK instructions for inlined numeric conversions to PICTURE and CHARACTER. This results in faster, shorter code sequences and also in faster compilations.

The compiler now generates better code for string comparisons. This also results in faster, shorter code sequences.

The compiler now generates shorter, faster code for conversion from FIXED DECIMAL to PICTURE with trailing overpunch characters.

The ARCH and TUNE compiler options now accept 5 as a valid suboption. Under ARCH(5), the compiler will generate, when appropriate, some new z/Architecture(TM) instructions such as NILL, NILH, OILL, OILH, LLILL, and LLILH.

Easier migration
Under the new NORESEXP compiler option, the evaluation of restricted expressions in code will be limited so that it matches the way it was in the earlier compilers.

The new BIFPREC compiler option controls the precision of the FIXED BIN result returned by various built-in functions and thus provides for better compatibility with the OS PL/I compiler.

The new BACKREG compiler option controls which register the compiler uses as the backchain register and thus allows for easier mixing of old and new object code.

SYSPRINT when written to SYSOUT may now be shared by any PL/I program running under Language Environment®.

The STORAGE compiler option causes the compiler to produce as part of the listing a summary, similar to that produced by the OS PL/I compiler, of the storage used by each procedure and begin-block.

The new BLKOFF compiler option provides for controlling the way offsets in the compiler's pseudo-assembler listing are calculated.

Improved usability
The new LAXDEF suboption of the RULES compiler option allows the use of so-called illegal defining without having the compiler generate E-level messages.

The new FLOATINMATH compiler option offers easier control of the precision with which math functions are evaluated.

The new MEMINDEX, MEMSEARCH, and MEMVERIFY built-in functions provide the ability to search strings larger than 32K.

The new ROUTCDE and DESC suboptions of the DISPLAY(WTO) compiler option offers control of the corresponding elements of the WTO.

The compiler will now store in each object a short string that will be in storage even when the associated code runs and that records all the options used to produce that object. This allows various tools to produce better diagnostics.

The compiler will now issue messages identifying more of the places where statements have been merged or deleted.

The PLIDUMP output will now include:

Hex dump of user static

The options used to compile each program in the Language Environment traceback

More information on PL/I files

Improved debug support: The Enterprise PL/I compiler is enhanced in V3.3 to support the new level of debug tool included in either the V3.3 full-function offering, or, as the separate, new IBM Debug Tool for z/OS V4 product. Included in the compiler is support for:

BASED structures using REFER are now supported in the debugger and in data-directed I/O statements (with the same restrictions as on all other BASED variables).

BASED structures that are BASED on scalar members of other structures (which, in turn, may be BASED, etc) are now supported in the debugger and in data-directed I/O statements (with the same restrictions as on all other BASED variables).

Full-function vs alternate function offerings
The mainframe interactive debug tool is offered with the Enterprise PL/I compiler in what is called the full function offering. This debug tool is a common facility that supports:

Enterprise COBOL for z/OS

Enterprise PL/I for z/OS

COBOL for OS/390 & VM

COBOL for MVS(TM) & VM

VisualAge® PL/I for OS/390

PL/I for MVS & VM

z/OS C/C++ optional feature

OS/390 C/C++ optional feature

Only one full-function offering is required for debugging applications written using any of these programming products. An alternate function offering is available for customers who do wish to receive the Enterprise PL/I for z/OS compiler but not the debug tool.

IBM Debug Tool for z/OS V4 is also offered as a separate product. For more information about the function offered in the debug tool, refer to Software Announcement 203-237 , dated September 16, 2003.

Hardware and software support services

SmoothStart(TM)/Installation services

SmoothStart and Installation Services are not provided.

Trademarks

z/Architecture, MVS, and SmoothStart are trademarks of International Business Machines Corporation in the United States or other countries or both.

z/OS, OS/390, Language Environment, and VisualAge are registered trademarks of International Business Machines Corporation in the United States or other countries or both.

Other company, product, and service names may be trademarks or service marks of others.

All Topics