RPG es uno de los lenguajes de programación más antiguos que aún se utilizan comercialmente a diario. IBM lo creó en 1959 para el ordenador IBM 1401, donde sustituyó el procesamiento de tarjetas perforadas y generó informes empresariales, 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 gestionado nóminas, inventarios 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 los años 60 y 70, era algo rígida: los programadores introducían el código en columnas fijas y dependían de un bucle de procesamiento incorporado. RPG III, introducido con el System/38 en 1979, añadió bloques estructurados: pruebas condicionales, bucles y subrutinas reutilizables que los programadores ya 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 entorno de lenguaje integrado 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. El RPG actual, a menudo llamado 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 al RPG de décadas pasadas.