Integrated Language Environment (ILE)
ILE is the current program model on IBM i, where a compiler turns source code into module objects (*MODULE) that are then bound into programs (*PGM) and shared service programs (*SRVPGM), and modules written in RPG, COBOL, C, C++ and CL can be bound into one program. It is also what AI modernization work on the platform aims at, since IBM's guided Bob workflows include older RPG to ILE RPG and monolithic to modular refactoring.
What is ILE?
ILE stands for Integrated Language Environment. IBM calls it the current stage in the evolution of IBM i program models. In plain words, it is the modern way programs are put together on IBM i.
Picture building with bricks instead of pouring one solid slab. Each piece of code compiles into its own small brick, called a module. You bind the bricks you need into a finished program. Change one brick later and you rebuild that brick, not the whole wall.
The bricks can come from different languages. One program can hold modules written in RPG (Report Program Generator), COBOL, C, C++ and CL (Control Language).
How does an ILE program get built?
The three ILE object types, in build order
- Compile to a moduleThe Create RPG Module (CRTRPGMOD) command compiles ILE RPG source into a module object, marked *MODULE on the system. A module on its own cannot be run.
- Bind modules into a programThe Create Program (CRTPGM) command binds one or more modules into a program object, marked *PGM. A program has only one entry point, picked with the ENTMOD parameter.
- Put shared code in a service programIBM describes a service program, marked *SRVPGM, as a collection of runnable procedures and data items that other ILE programs can reach directly. It has no entry point, so it cannot be the target of a dynamic program call.
IBM's guide says the two-step build lets you modularize an application without recompiling the whole application, and reuse the same module in different applications. The one-step Create Bound RPG (CRTBNDRPG) command does both jobs at once, but the module it makes is temporary.
How is ILE different from the older program model?
Original Program Model (OPM) compared with ILE
| OPM | ILE | |
|---|---|---|
| Languages | RPG, COBOL, CL, BASIC, PL/1 | RPG, COBOL, C, C++, CL |
| Mixing languages in one program | No | Yes, modules bind across languages |
| Shared procedure library | No | Yes, a service program (*SRVPGM) |
| Rebuild after a small change | The whole program | Only the module you changed |
| Calling the other model | OPM can call ILE | ILE can call OPM |
IBM lists coexistence as one of ILE's benefits. OPM programs can call ILE programs, and ILE programs can call OPM programs, so a shop can move over gradually instead of converting everything at once.
What is an activation group?
An activation group is a workspace inside a job. IBM says all ILE programs and service programs are activated within a substructure of a job called an activation group. It keeps what one running program needs apart from its neighbors.
- Static program variables
- Dynamic storage
- Temporary data management resources such as open files, commitment definitions and SQL (Structured Query Language) cursors
- Certain exception handlers and ending procedures
Why does ILE matter for AI tools on IBM i?
Much of the RPG code still running today was written before ILE, as one long program in the older fixed-format style. That is exactly where the AI tooling is pointed. IBM's page for the Bob Premium Package for i lists guided workflows for older RPG to ILE RPG and monolithic to modular refactoring, alongside fixed-form to free-form RPG, embedded SQL modernization and DDS-to-DDL conversion.
- Older RPG to ILE RPG: bring a program into the current model so it can be bound with others
- Monolithic to modular refactoring: split one long program into modules and service programs
- Fixed-form to free-form RPG: a change of coding style, often done in the same pass
The payoff is the one IBM's own modularity guidance names: faster compile time, simpler maintenance, easier testing in isolation, better use of programmer time, and easier migration of code from other systems. Instead of recompiling 2000 lines after a small change, you recompile the 100 to 200 lines that changed.
Those workflow names are IBM's description of its own product, not a measured result. An AI conversion still has to pass your own tests before it goes near production.
Related Terms
RPG
Report Program Generator, the primary business application programming language on IBM i and its AS/400 predecessors, still running the majority of production logic in most IBM i shops.
Free-Format RPG
A modern RPG coding style that drops the rigid column-based syntax of traditional fixed-format RPG in favor of freer, more readable statement syntax.
COBOL
A long-established business programming language still running production logic on IBM i and other legacy enterprise platforms alongside RPG.
IBM i
IBM's operating system for Power servers running traditional AS/400-lineage business applications, with Db2 for i built directly into the OS.
Bob Premium Package for i
The IBM i-specific add-on to IBM Bob, generally available June 24, 2026. It gives Bob about 40 skills and workflows and about 30 tools that work directly against QSYS, the IFS, CL, SQL and Db2 for i on a live system.