With IBM Enterprise PL/I for z/OS® V3.4, you can leverage more than 30 years of IBM experience in
application development to facilitate your new e-business endeavors, helping you to integrate PL/I
and Web-based business processes in Web services, XML, Java, and PL/I applications. This
interoperability enables you to capitalize on existing IT investment while smoothly incorporating
new, Web-based applications as part of your organizations infrastructure.

Enterprise PL/I is a leading-edge IBM z/OS-based compiler that helps you create and maintain
mission-critical, line-of-business PL/I applications targeted to execute on your z/OS systems and
provides access to IBM DB2®, IBM CICS®, and IBM IMS systems, as well as other data and
transaction systems.

V3.4 compiler enhancements

Migration enhancements

V3.4 contains enhancements to make it more compatible for migration with the OS PL/I V2 and PL/I
for MVS and VM compilers.

Will use the same PRV mechanism to address CONTROLLED variables as previous compilers used under the
new PRV suboption of the NOWRITABLE option. This allows CONTROLLED variables to be shared between
old and new code.

Improved and eased default initialization of variables with INITAUTO, INITBASED, INITCTL, and
INITSTATIC.

Eased decimal precision specification in ADD, DIVIDE, and MULTIPLY.

Support of previous STRING of GRAPHIC semantics with the new STRINGOFGRAPHIC.

Support of previous semantics for the DEFAULT statement.

Flag declares with storage overlay problems that "used to work" under the previous compiler.

Lifted restrictions on RETURN inside BEGIN.

Support of EXT STATIC initialized in assembler.

Optionally flag semicolons in comments by using the new NOLAXSEMI suboption of the RULES option.

Flag invalid carriage control characters when the MARGINS option indicates that carriage control
characters are present.

Flag more language misuse, especially with RETURN.

Support of REPLACEBY2 to reduce stack usage.

Performance improvements

V3.4 contains a number of enhancements designed to improve the compile time or run time of your
application.

The compiler will use the SRST instruction in INDEX(x,y) if x and y are CHAR. When y is CHAR(1),
code is specially optimized.

Improved code will be generated for TRANSLATE(x,y,z), particularly when x and z are constants.

The compiler will inline the following to help produce faster, shorter code sequences:

Or and And of BIN FIXED

SIGNED FIXED BIN(8) to ALIGNED BIT(8)

Assignments to pictures with all Z's and a trailing or leading sign (such as PIC'(n)ZS', PIC'(n)Z+'
and PIC'(n)Z-')

FLOAT to FIXED DEC even if SIZE is enabled

Assignments to pictures where total zero suppression applies (such as PIC'ZZZ,ZZZ')

The compiler will flag statements where it generates a call to a library routine to map a structure
at run time.

The compiler now generates better code for packed decimal arithmetic. This should also result in
faster, shorter code sequences.

The compiler reduces the amount of stack storage used for concatenates.

The compiler includes faster condition handling for I/O ON-units consisting of only a GOTO statement
or only of very simple assignments.

The performance of compiler listing generation is improved.

The code generated to pass a structure using only a simple REFER as a parameter has been improved.

The scheduler phase of code generation has been improved under OPT(2) or OPT(3) when the new
SCHEDULER option is on.

Usability enhancements

Optionally provides offsets in the AGGREGATE listing in hex.

Supports DEC(31) only when needed.

Allows comments in options where blanks would also be allowed. This can be especially useful when
options files are used.

Optionally flag declares of even precision FIXED DEC.

Optionally flag DEC to DEC assignments that could raise SIZE.

Flag DEC/PIC to PIC assignments that could raise SIZE.

Supports LIKE without INIT.

Ease INCLUDEs from partitioned data sets under UNIX® System Services (USS).

Support more built-ins in the MACRO facility. In particular, the MACRO facility will support the
following built-in functions:

LOWERCASE

MACNAME

TRIM

UPPERCASE

Adds a new DOC option to the OPTIONS option to allow you to specify whether you want all options and
suboptions in the listing, or only those options and suboptions described in the programming guide.

Optionally disallow use of PROCESS.

Optionally keep PROCESS across preprocessors.

Adds %XINCLUDE statement that has the same syntax and function as the %INCLUDE statement, but will
include a file only if it has not already been included.

Adds %INSCAN and %XINSCAN statements that will specify, via a macro expression, the name of a file
to be included.

Debugging improvements

The new HOOK/NOHOOK suboption of the TEST option will control whether the compiler generates debug
hooks or just the information needed for overlay hooks. So, if NOHOOK is specified along with one
of the suboptions that would previously have generated hooks, no hooks will be generated, but the
additional PPA's needed for overlay hooks will be generated. The option TEST(BLOCK,NOHOOK,NOSYM)
will then also be useful in allowing the Language Environment® dump to include more information
(such as the module name in the traceback) without the addition of any extra instructions in the
generated code.

User specified options will always be included in the listing to help in problem analysis.

Full Function versus Alternate Function offerings

With V3.4, the mainframe interactive debug tool in Debug Tool for z/OS V5 is offered with the
Enterprise PL/I compiler in 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® and VM

COBOL for MVS and VM

VisualAge® PL/I for OS/390

PL/I for MVS and 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 if you prefer to receive the
Enterprise PL/I for z/OS compiler but not the debug tool.

Debug Tool for z/OS V5 is also offered as a separate product. For more information about the
function offered in the debug tool, refer to Software Announcement
204-206
, dated September 21, 2004.

Trademarks

IMS and MVS are trademarks of International Business Machines Corporation in the United States or
other countries or both.

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

Java is a trademark of Sun Microsystems, Inc.

UNIX is a registered trademark of the Open Company in the United States and other countries.

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

Specified operating environment

Hardware requirements

Enterprise PL/I for z/OS® V3.4 will run on any hardware configuration supported by the licensed
programs specified below.

Software requirements

Unless otherwise announced by IBM, Enterprise PL/I for z/OS V3.4 runs under the control of, or in
conjunction with, the currently supported releases of the following programs and their subsequent
releases or their equivalents. For more information on programs listed below that require program
temporary fixes (PTFs), refer to the program directory and preventive service planning (PSP) bucket.

Security, auditability, and control

The announced program uses the security and auditability features of the host operating system
software. The customer is responsible for evaluation, selection, and implementation of security
features, administrative procedures, and appropriate controls in application systems and
communication facilities.

Ordering z/OS through the Internet

ShopzSeries provides an easy way to plan and order your z/OS ServerPac or CBPDO. It will analyze
your current installation, determine the correct product migration, and present your new
configuration based on z/OS. Additional products can also be added to your order (including
determination of whether all product requisites are satisfied). ShopzSeries is available in the
U.S. and several countries in Europe. In countries where ShopzSeries is not available yet, contact
your IBM representative (or IBM Business Partner) to handle your order via the traditional IBM
ordering process. For more details and availability, visit the ShopzSeries Web site at

Current licensees

Current licensees of Enterprise PL/I for z/OS V3 will be sent a program reorder form that can be
returned directly to IBM Software Delivery and Fulfillment.

Reorder forms are scheduled to be mailed by two weeks after planned availability. Reorder forms
returned to IBM Software Delivery and Fulfillment will be processed within 10 workdays of receipt.
When V3.4 is available, V3.3 will no longer be available.

Unlicensed documentation:
A Program Directory (GI10-8426) and Licensed Program Specifications (GC27-1455) is supplied
automatically with the basic machine-readable material. No other hardcopy publications are shipped
with the product.

Displayable softcopy publications:
All IBM Enterprise PL/I for z/OS V3 publications are available, free of charge, in displayable
softcopy format (BookManager®, PDF) from the IBM PL/I Web site at

Subsequent updates (technical newsletters or revisions between releases)
to the publications shipped with the product will be distributed to the
user of record for as long as a license for this software remains in
effect. A separate publication order or subscription is not needed.

The terms for Enterprise PL/I for z/OS V3, as previously announced in Software Announcement
201-344
, dated November 27, 2001, licensed under the IBM Customer Agreement, are unaffected by
this announcement.

The pricing for IBM Enterprise PL/I for z/OS V3, as previously announced in Software Announcement
201-344
, dated November 27, 2001, is unaffected by this announcement.

Entry support license OTC:
OTC authorizes use only on IBM Entry End User/390 machines.

IBM Global Financing

IBM Global Financing offers competitive financing to credit-qualified customers to assist them in
acquiring IT solutions. Our offerings include financing for IT acquisition, including hardware,
software, and services, both from IBM and other manufacturers or vendors. Offerings (for all
customer segments: small, medium, and large enterprise), rates, terms, and availability can vary by
country. Contact your local IBM Global Financing organization or visit the Web at

IBM Global Financing offerings are provided through IBM Credit LLC in the
United States and other IBM subsidiaries and divisions worldwide to
qualified commercial and government customers. Rates are based on a
customer's credit rating, financing terms, offering type, equipment type,
and options, and may vary by country. Other restrictions may apply.
Rates and offerings are subject to change, extension, or withdrawal
without notice. For more financing information, visit