You are currently on IBM Systems Media’s archival website. Click here to view our new website.


RPG - Anchoring Your Team

Alternate approaches to extending your RPG applications.

Alternate approaches to extending your RPG applications.
Illustration by Scott Gwilliams

It often surprises us how many IBM* System i* managers and developers are unaware of the RPG-powered applications. Very little these days can't be accomplished with RPG. While aspects of some applications may be better suited to other languages, to rule out RPG completely ignores its potential.

For those of you who haven't kept fully up-to-date with the latest developments in RPG, we hope this article motivates you to move your RPG applications in new directions. Many of the capabilities identified in this article derive from RPG's ability to prototype and use functions and methods typically used by C and Java* programmers. Originally designed to facilitate subprocedure and program calls, prototypes are now the key to the modern application universe. "The RPG Impact" outlines the history behind this functionality.

Who Says RPG Can't Play?

Why would you want to explore alternative approaches to extending your RPG applications? If these features are so are important, won't IBM add them to the compiler? Possibly, but with operating-system releases coming out only every 12 to 18 months, it can take far too long to get your hands on new functionality. Even if IBM adds the desired capability to the RPG compiler, for most of us it would be at least six months after the release before we could use it in our production applications. This can mean a significant delay between the identification of a need and the ability to respond to it through native RPG. In today's fast-changing world, that's too long to wait.

So what's the alternative? Some companies have decided that, rather than wait for RPG to catch up, they'll abandon it and switch to writing new applications in other languages, such as Java. The more foolhardy might even move off the System i platform completely and migrate to one of the .NET languages. The major problem with this approach is that it takes no account of your staff's existing skills. Those skills go well beyond the ability to program in RPG and normally encompass significant knowledge about the way your business operates. Surely it makes sense to continue using this knowledge while finding alternative approaches to implementing new technology.

Let's examine a few examples of what today's RPG programmers do to raise the value of the System i platform in their companies.


The use of RPG as a Web-programming language is well-established, and RPG drives many Web sites in the System i world. The initial push came back in the V3R2/V3R7 time frame, when IBM first gave the System i platform the capability to act as a Web server. Magazine articles quickly appeared, but it's probably fair to say the widespread use of RPG as a Web-programming language stems mainly from two events: Mel Rothman's development of the original CGIDEV library and its successor CGIDEV2 (, and Bradley Stone's eRPG series of articles and subsequent book (, which popularized the concept.

A recent development further demonstrates that RPG is alive and well in the Web world. CoralTree Systems from the United Kingdom has announced the availability of Renaissance (, an open-source framework based on the CGIDEV2 library. Renaissance aims to simplify the development of Ajax-based Web applications for the RPG programmer. While it's still too early to judge this announcement's impact, it's clearly a move in the right direction.

As expected, naysayers immediately started telling everyone Web services was not a game RPG could play, to which we and many others have simply said 'horse hockey!'

Jon Paris is a technical editor with IBM Systems Magazine and co-owner of Partner400.

Susan Gantner is a technical editor with IBM Systems Magazine and co-owner of Partner400.



2019 Solutions Edition

A Comprehensive Online Buyer's Guide to Solutions, Services and Education.

New and Improved XML-INTO

Namespace support makes the opcode a viable option

Authenticating on the Web

The finer points of OpenRPGUI, Part 1

The Microphone is Open

Add your voice: Should IBM i include open-source RPG tools?

IBM Systems Magazine Subscribe Box Read Now Link Subscribe Now Link iPad App Google Play Store
IBMi News Sign Up Today! Past News Letters