Home » IBM » IBM Software » Rational » Rational Development Studio for i
IBM

Rational Development Studio for i

Features and benefits

Rational® Development Studio for i V7.1 provides programming languages to create modern IBM i applications. The product contains three separately orderable features.

Option Components
ILE compilers
  • Option 31 ILE RPG
  • Option 35 ILE RPG *PRV compiler
  • Option 41 ILE COBOL
  • Option 45 ILE COBOL *PRV
  • Option 51 ILE C
  • Option 52 ILE C++
  • Option 56 IXLC for C/C++
Heritage compilers
  • Option 32 S/36 compatible RPG II
  • Option 33 S/38 compatible RPG III
  • Option 34 RPG/400
  • Option 42 S/36 compatible COBOL
  • Option 43 S/38 compatible COBOL
  • Option 44 OPM COBOL
ILE compilers
  • Option 21 Application Development Toolset

In future, IBM will focus its development efforts on the ILE Compilers in Rational Development Studio for i and on the new Eclipse-based Rational Developer for Power Systems Software™ development tool. The Heritage compilers and Application Development Toolset will no longer be updated.

ILE RPG – V7.1

The ILE RPG compiler is part of the IBM Rational® Development Studio for i ILE Compilers feature

The productivity features of RPG IV and the ILE common runtime environment deliver a powerful programming language

ILE RPG is the compiler for RPG IV, the latest generation of RPG, enriched with the new functions you've been asking for. With ILE, you've got the power of a suite of compilers for multilanguage interoperability and faster call performance. Your investment in RPG applications is protected with full upward compatibility. A conversion aid helps you easily convert your RPG III applications to RPG IV language definition.

ILE Extends Your Programming Reach

Using static calls to bound procedures, you can create applications comprised of smaller, easier-to-maintain modules then link them together as one program, without the execution overhead of dynamic calls. ILE permits the binding of C, RPG, COBOL, and CL modules into a single program, thus creating a multi-language application. And you can reuse those modules in many applications, realizing savings in time and money for your organization.

To promote consistency across the ILE languages, ILE RPG has support for integers, floating point, variable length fields, unicode, parameters passed by value, return values, null terminated strings, pointers and pointer arithmetic, long names and dynamic storage management. ILE RPG has support for easily calling Java and being called by Java.

ILE ensures consistent runtime behaviors across all languages. Results are the same, and what you expect, whatever language you are using.

RPG programs written using ILE RPG for iSeries can coexist and communicate with programs written using RPG/400. ILE RPG V7.1 ENHANCEMENTS

  • SORT AND SEARCH DATA STRUCTURE ARRAYS: To sort or search a data structure array, one subfield is identified as the "key" for the array, using the syntax ARRAY(*).KEYSUBFIELD.
  • SUPPORT FOR ALIAS NAMES
    • The ALIAS keyword can be specified on the File specification for an externally described file that will not have Input or Output specifications generated by the compiler. These are files specified with the QUALIFIED keyword, or files specified within subprocedures. When the LIKEREC keyword is used to define a data structure from one of the record formats of the file, the RPG subfield names will be taken from the alternate names of the fields rather than the short names.
    • The ALIAS keyword can be specified on the Definition specification for an externally described data structure. The RPG subfield names will be taken from the alternate names of the fields rather than the short names.
  • NEW AND UPDATED BUILT-IN FUNCTIONS
    • The %SCANRPL built-in function scans for all occurrences of a value within a string and replaces them with another value.
    • New built-in function %PARMNUM can be used within a procedure to soft-code the number of a parameter.
    • Enhanced built-in function %LEN can now be used to obtain the maximum number of characters in a varying-length alphanumeric, UCS-2 or DBCS variable.
  • OPTIONAL PROTOTYPES: If a program or procedure is not called by another RPG module, it is optional to specify the prototype. The prototype may be omitted for the following types of programs and procedures:
    • A program that is only intended to be used as an exit program or as the command-processing program for a command
    • A program that is only intended to be called from a different programming language
    • A procedure that is not exported from the module
    • A procedure that is exported from the module but only intended to be called from a different programming language
  • PERFORMANCE IMPROVEMENT FOR RETURNING LARGE VALUES: A procedure defined with the RTNPARM keyword handles the return value as a hidden parameter. When a procedure is prototyped to return a very large value, especially a very large varying value, the performance for calling the procedure can be significantly improved by defining the procedure with the RTNPARM keyword.
  • NEW OPTIONS FOR XML-INTO
    • The datasubf option allows you to name a subfield that will receive the text data for an XML element that also has attributes.
    • The countprefix option reduces the need for you to specify the allowmissing=yes option. It specifies the prefix for the names of the additional subfields that receive the number of RPG array elements or non-array subfields set by the XML-INTO operation.
    • These options are also available through PTF SI34983 for 6.1.
  • PASS ANY TYPE OF STRING PARAMETER: Implicit conversion will be done for string parameters passed by value or by read-only reference. For example, a procedure can be prototyped to have a CONST UCS-2 parameter, and character expression can be passed as a parameter on a call to the procedure. This enables you to write a single procedure with the parameters and return value prototyped with the UCS-2 type. To call that procedure, you can pass any type of string parameter, and assign the return value to any type of string variable.
  • SUPPORT FOR ENCRYPTION OF DEBUG DATA: A new debug encryption key compiler option, DBGENCKEY, is supported in the ILE RPG compiler. This option specifies the key to be used to encrypt source code that is embedded in debug views of a module (for example, the Listing View debug view created by specifying the DBGVIEW(*LIST) compile option). An equivalent option is available on the start debug command, STRDBG, to specify the key for decryption of the encrypted debug views.
  • SUPPORT FOR THE TERASPACE STORAGE MODEL
    • RPG modules and programs can be created to use the teraspace storage model or to inherit the storage model of their caller. With the teraspace storage model, the system limits regarding automatic storage are significantly higher than for the single-level storage model. There are limits for the amount of automatic storage for a single procedure and for the total automatic storage of all the procedures on the call stack.
    • Use the storage model (STGMDL) parameter on the CRTRPGMOD or CRTBNDRPG command, or use the STGMDL keyword on the Control specification.
      • *TERASPACE: The program or module uses the teraspace storage model.
      • *SNGLVL: The program or module uses the single-level storage model.
      • *INHERIT: The program or module inherits the storage model of its caller.
    • The default value of the ACTGRP parameter and Control specification keyword is changed from QILE to *STGMDL. ACTGRP(*STGMDL)specifies that the activation group depends on the storage model of the program. When the storage model is *TERASPACE, ACTGRP(*STGMDL) is the same as ACTGRP(QILETS). Otherwise, ACTGRP(*STGMDL) is the same as ACTGRP(QILE).
    • Ability to allocate teraspace storage. Use the ALLOC keyword on the Control specification to specify whether the RPG storage-management operations in the module will use teraspace storage or single-level storage. The maximum size of a teraspace storage allocation is significantly larger than the maximum size of a single-level storage allocation.
  • SUPPORT FOR OPEN ACCESS: RPG EDITION
    Open Access is a full-featured version of the limited support provided by RPG SPECIAL files. It provides a way for RPG programmers to use the simple and well-understood RPG I/O model to access devices that are not directly supported by RPG.

    When the HANDLER keyword is specified on a File specification, the RPG compiler will generate code to use the specified handling procedure for I/O operations to the file rather than generating code to call the system's data management functions.

    The HANDLER keyword can be used for any RPG device, DISK, PRINTER, or WORKSTN. The provider of the handling procedure can choose the RPG device-type that best fits the function that the handler provides. For example, a user-interface application could map to a WORKSTN file, a Spreadsheet document could map to a PRINTER file, and a Web service could map to a keyed DISK file.

    To obtain the runtime enablement for these capabilities, customers should order IBM Rational Open Access: RPG Edition (5733-OAR).

ILE COBOL V7.1

The ILE COBOL compiler is part of the IBM Rational® Development Studio for i ILE Compilers feature. The ILE Compiler feature also includes the ILE C, ILE C++ and ILE RPG compilers, and the Application Development ToolSet.

Bringing the power and flexibility of the Integrated Language Environment (ILE) to the iSeries COBOL environment, the ILE COBOL for iSeries compiler gives you powerful functions to enhance your programming tasks.

Businesses Can Depend on ILE COBOL.

The next generation of the COBOL programming language for IBM i is here: Integrated Language Environment (ILE) COBOL.

ANSI-85 functions of ILE COBOL let you easily port code from other platforms to the iSeries system. Your investment in applications is protected, and you can move confidently into the future. We can help you increase your productivity with interlanguage calls, interactive syntax checking, debugging facilities and lots more.

ILE COBOL V7.1 ENHANCEMENTS

  • COMPUTATIONAL-5 (NATIVE BINARY) DATA TYPE: COMPUTATIONAL-5 or COMP-5 is a native binary data type now supported by the USAGE clause. COMP-5 data items are represented in storage as binary data, and can contain values up to the capacity of the native binary representation (2, 4, or 8 bytes). When numeric data is moved or stored into a COMP-5 item, truncation occurs at the binary field size rather than at the COBOL picture size limit. When a COMP-5 item is referenced, the full binary field size is used in the operation. This support will enhance portability to or from COBOL on other IBM platforms and operating systems.
  • IMPROVED PERFORMANCE FOR XML GENERATE
    • Performance improvements have been made for XML GENERATE when the APPEND option is specified. Users who have a large number of data records to be appended into a data structure or into a stream file will benefit from these changes. The improvements include the addition of new PROCESS statement parameter XMLGEN with option values
    • NOKEEPFILEOPEN / KEEPFILEOPEN
      Specify KEEPFILEOPEN to indicate that the XML stream file is to be left open and not closed when the XML GENERATE statement is complete, so that subsequent XML GENERATE FILE-STREAM APPEND statements can quickly append data to the stream file.
    • NOASSUMEVALIDCHARS / ASSUMEVALIDCHARS
      Specify ASSUMEVALIDCHARS to have XML GENERATE bypass the checking for special characters (less-than, greater-than, ampersand, and the single and double-quote symbols), and for characters not supported by XML that would require being generated as hexadecimal. Otherwise normal checking will be done with the default NOASSUMEVALIDCHARS.
  • Performance is improved for cases where the same COBOL data item is repeatedly output using XML GENERATE
  • GREATER EASE IN SPECIFYING THE VALUE CLAUSE FOR A NATIONAL DATA ITEM: A non-numeric literal can be specified on the VALUE clause for a national data item.
  • COMPILE VERY LARGE PROGRAMS BY DISABLING OPTIMIZATION: When programs fail to compile due to reaching system limits, specifying OPTIMIZE(*NEVER) or NEVEROPTIMIZE will cause the COBOL compiler to omit generating optimization code for the program, which may allow the program to compile.
  • SUPPORT FOR ENCRYPTION OF DEBUG DATA: A new debug encryption key compiler option, DBGENCKEY, is supported in the ILE COBOL compiler. This option specifies the key to be used to encrypt source code that is embedded in debug views of a module (for example, the Listing View debug view created by specifying the DBGVIEW(*LIST) compile option). An equivalent option is available on the start debug command, STRDBG, to specify the key for decryption of the encrypted debug views.
  • SUPPORT FOR THE TERASPACE STORAGE MODEL
    • COBOL modules and programs can be created to use the teraspace storage model or to inherit the storage model of their caller. With the teraspace storage model, the system limits regarding automatic storage are significantly higher that for the single-level storage model. There are limits for the amount of automatic storage for a single procedure and for the total automatic storage of all the procedures on the call stack.
    • Use the storage model (STGMDL) parameter on the CRTCBLMOD or CRTBNDCBL command, or use the STGMDL PROCESS option.
      • TERASPACE: The program or module uses the teraspace storage model.
      • SNGLVL: The program or module uses the single-level storage model.
      • INHERIT: The program or module inherits the storage model of its caller.
      • The default value of the ACTGRP command parameter is changed from QILE to *STGMDL. ACTGRP(*STGMDL) specifies that the activation group depends on the storage model of the program. When the storage model is *TERASPACE, ACTGRP(*STGMDL) is the same as ACTGRP(QILETS). Otherwise, ACTGRP(*STGMDL) is the same as ACTGRP(QILE).
  • NEW PROCESS STATEMENT OPTIONS
    • ACTGRP is now available as a PROCESS statement parameter with option values
      -- STGMDL
      -- NEW
      -- CALLER.
    • NEVEROPTIMIZE is now available as a PROCESS statement option
    • STGMDL is now available as a PROCESS statement parameter with option values
      -- INHERIT
      -- SNGLVL
      -- TERASPACE
    • XMLGEN is now available as a PROCESS statement parameter with option values
      -- NOKEEPFILEOPEN / KEEPFILEOPEN
      -- NOASSUMEVALIDCHARS / ASSUMEVALIDCHARS

ILE C and ILE C++ compilers – V7.1

The ILE C and ILE C++ compilers are part of the IBM Rational® Development Studio for i ILE Compilers feature, which now also includes the ILE COBOL and ILE RPG compilers, and the Application Development ToolSet.

ILE C Compiler

The ILE C compiler is a high-performance, high-function compiler for C development on the IBM i platform. You get the combination of function-rich C programming and the power of Integrated Language Environment (ILE). ILE gives you fast calls and a uniform run-time model-definite benefits for call-intensive C programming.

ILE C++ Compiler

The C++ compiler provides additional features not found in the C language. These features include additional keywords, parameterized types (templates), support of object-oriented programming via classes, and stricter type checking.

With the ILE C++ Compiler, you can develop object-oriented, mission-critical applications for the iSeries server. You can take advantage of the object-oriented technology, such as data encapsulation and code reuse, to quickly design and adapt applications for changing business needs.

ILE C V7.1 ENHANCEMENTS

  • SUPPORT FOR ENCRYPTION OF DEBUG DATA:

    A new debug encryption key compiler option, DBGENCKEY, is supported in the ILE C compiler. This option specifies the key to be used to encrypt source code that is embedded in debug views of a module (for example, the Listing View debug view created by specifying the DBGVIEW(*LIST) compile option). An equivalent option is available on the start debug command, STRDBG, to specify the key for decryption of the encrypted debug views.

ILE C++ V7.1 ENHANCEMENTS

  • DECIMAL FLOATING-POINT SUPPORT
    • Allows floating-point computations to be performed using decimal arithmetic (base 10)
    • Avoids potential rounding errors converting binary floating-point data to/from human readable formats
    • Conforms to the decimal formats and arithmetic described in the IEEE 754-2008 Standard for Floating-Point Arithmetic
    • Adds support to ILE C++ compiler, based on Draft Technical Report 24732 submitted to the ISO/IEC JTC1/SC22/WG14 Programming Language C committee
    • New data types
      • _Decimal32, 4 bytes, 7 digits precision, -95/+96 exponent
      • _Decimal64, 8 bytes, 16 digits precision, -383/+384 exponent
      • _Decimal128, 16 bytes, 34 digits precision, -6143/+6144 exponent
    • Includes new decimal floating-point literals: 1.0df, 1.0dd, and 1.0dl
    • Conversions to/from C++ built-in data types, such as integers and binary floating-point types
    • Includes DECFLTRND option on C++ compiler commands (CRTCPPMOD, CRTBNDCPP) to control compile-time decimal floating-point rounding mode
  • SUPPORT FOR C99 FEATURES: The ILE C++ compiler has been enhanced to support many of the C99 features defined in the ISO/IEC 9899:1999 C language standard. Some of the new C99 features now supported include:
    • _Pragma operator
    • __func__ predefined identifier
    • hexadecimal floating-point literals
    • variable length arrays
    • empty arguments for function-like macros
    • variable number of arguments for function-like macros
  • SUPPORT FOR ENCRYPTION OF DEBUG DATA: A new debug encryption key compiler option, DBGENCKEY, is supported in the ILE C++ compiler. This option specifies the key to be used to encrypt source code that is embedded in debug views of a module (for example, the Listing View debug view created by specifying the DBGVIEW(*LIST) compile option). An equivalent option is available on the start debug command, STRDBG, to specify the key for decryption of the encrypted debug views.

Application Development ToolSet (ADTS) – V7.1

ADTS for IBM i is an integrated set of host-based development tools. It is an optional feature of the Rational™ Development Studio for i product.
ADTS supports the ILE languages: ILE RPG, ILE COBOL, ILE C, and ILE CL.

ADTS is supported but is no longer being enhanced. Rational Developer for Power Systems Software – RPG and COBOL Developments tools for IBM i provides more productive and modern development tools. Rational Developer for Power Systems Software is a new Eclipse based workstation tool that helps you rapidly and cost-effectively modernize your IBM i applications and get you ready for the on-demand business environment.

What's in ADTS.
The tool suite consists of a base set of ten utilities for creating and maintaining applications, and two additional features for controlling the development environment.

Base set of utilities

  • Source Entry Utility (SEU)
  • Screen Design Aid (SDA)
  • Report Layout Utility (RLU)
  • Data File Utility (DFU)
  • Character Generator Utility (CGU)
  • Advanced Printer Function (APF)
  • Programming Development Manager (PDM)
  • Interactive Source Debugger (ISDB)
  • File Compare and Merge Utility (FCMU)

ADTS V7.1

  • NEW EXIT POINT TO ALLOW CUSTOMERS TO MONITOR OR DISABLE CHANGING SOURCE FILES USING SEU, SDA, RLU.
    • Exit point QIBM_QSU_ALW_EDIT is added for SEU, SDA and RLU. The exit program associated with the exit point will receive parameters indicating the library, file, and member of the source file. The exit program can then determine if the current job should be allowed to continue with the operation that will change the source file and set the "Allow" parameter to '2' to indicate that the operation should not be allowed to continue, and to any other value to indicate that the operation should be allowed to continue.

      The exit point format is EXTP0100.

      The parameters for the exit program are LIBRARY, FILE, MEMBER, ALLOW:

      - LIBRARY CHAR(10)
      - FILE CHAR(10)
      - MEMBER CHAR(10)
      - ALLOW CHAR(1)
  • SEU SYNTAX CHECKING IS FROZEN AT THE 6.1 LEVEL FOR RPG AND COBOL:
    • Features introduced to ILE RPG and ILE COBOL following the 6.1 release are not recognized by the syntax-checkers used by SEU.

All products within the Rational category

Contact us today for more information

  • or call: 0345 230 1055
  • * Required fields
  • Nature of your Enquiry (any additional details)
  • I have read & agree to the Privacy Policy *
 
Latest News

Oracle Fighting to Keep Linux Open and Free 30/08/2023

Oracle has just released a statement by...

ACARDIA LIMITED 12th Floor, Ocean House, The Ring, Bracknell, Berkshire RG12 1AX. United Kingdom.