RPG es uno de los lenguajes de programación más antiguos que aún se usa comercialmente a diario. IBM lo creó en 1959 para la computadora IBM 1401, donde reemplazó el procesamiento de tarjetas perforadas y generó informes comerciales, el origen de su nombre, como relata el autor Nick Litten en “A Brief History of the IBM RPG Programming Language”. Durante décadas ha manejado nómina, inventario y facturación para bancos, aseguradoras, fabricantes y minoristas.
El lenguaje evolucionó a lo largo de los años. RPG II, la versión de las décadas de 1960 y 1970, era algo rígida: los programadores ingresaban el código en columnas fijas y dependían de un bucle de procesamiento incorporado. RPG III, introducido con System/38 en 1979, agregó componentes básicos estructurados: pruebas condicionales, bucles y subrutinas reutilizables que los programadores esperaban. IBM lo rebautizó como RPG/400 cuando se lanzó el AS/400 en 1988, según Wikipedia.
RPG IV, introducido a mediados de la década de 1990, es la versión moderna de RPG utilizada en los sistemas IBM i. Se convirtió en parte del Integrated Language Environment de IBM, lo que permitió que RPG funcionara más fácilmente junto con otros lenguajes empresariales, como COBOL y C. Desde entonces, IBM ha modernizado constantemente RPG, alejándolo de su antiguo formato rígido basado en columnas. La versión actual de RPG, a menudo llamada RPGLE o ILE RPG, se puede escribir en un estilo de forma libre que se parece mucho más al código moderno ordinario que a la versión de RPG de décadas pasadas.