En plein cœur de l’ère digitale, le Report Program Generator (RPG) continue de fasciner par sa longévité et sa capacité à évoluer depuis les mainframes des années 1960 jusqu’aux plateformes cloud actuelles. Conçu à l’origine pour générer des états imprimés sur IBM 1401 et 360, ce langage a su se réinventer, passant du format fixe à des styles libres et modulaires, tout en restant un pilier dans de nombreuses entreprises. Entre intégrations avec Windows .Net, déploiements sur IBM Power i et adaptations aux enjeux 2025, RPG se positionne encore comme un atout stratégique. Plongez dans les racines historiques, la structure technique, les cas d’usage modernes, les bonnes pratiques et les perspectives d’un langage signé IBM, tout en explorant son écosystème riche et limiteless.
Genèse et évolution du Report Program Generator (RPG) d’IBM
Le Report Program Generator, connu sous l’abréviation RPG, a vu le jour en 1959 dans les laboratoires d’IBM. Initialement baptisé Générateur Automatique de Programmes (GAP) en France, il était destiné à simplifier la création de rapports sur cartes perforées. À une époque où chaque cycle machine était précieux, RPG a offert une approche déclarative centrée sur un cycle de traitement fixe, très différente des langages structurés modernes.
Plusieurs étapes-clés jalonnent son histoire :
- 1960-1970 : Naissance de RPG I pour IBM 1401, évolution vers RPG II sur System/360.
- Années 1980 : Transition vers AS/400 (RPG III) avec des fonctionnalités élargies et une gestion mémoire améliorée.
- Années 1990 : Apparition de RPG IV (aussi nommé RPGLE) avec support des données libres et d’instructions plus expressives.
- Début 2000 : Adoption par des plateformes tierces telles que Windows .Net (via WINRPG) et OpenVMS.
- 2020-2025 : Intégration dans IBM Power i, modernisation Free-Format et interopérabilité avec les technologies cloud.
Ce parcours n’a pas été linéaire. RPG a d’abord été comparé à COBOL et PL/I. Il a ensuite subi une image de « langage figé », jugé obsolète. Pourtant, chaque version a apporté des réponses aux besoins d’entreprise : optimisation de performance sur des volumes massifs, interface aisée avec des bases DB2, et respect des standards de sécurité IBM.
Au fil des décennies, plusieurs fabricants ont proposé leurs propres implémentations, contribuant à un écosystème limitless. Unisys, HP et même des communautés open source se sont approprié RPG pour répondre à des besoins variés. Cette diffusion témoigne de la robustesse et de la fiabilité du langage.
Le tableau suivant synthétise les grandes phases :
| Période | Version | Plate-forme | Caractéristique clé |
|---|---|---|---|
| 1960-1970 | RPG I / II | IBM 1401, 360 | Cycle fixe, entrée cartes |
| Années 1980 | RPG III | AS/400 | Gestion d’entrées/sorties améliorée |
| Années 1990 | RPG IV (RPGLE) | System i, Windows .Net | Free-Format, built-in functions |
| 2020-2025 | RPG IV (v7+) | IBM Power i, Cloud | Interopérabilité REST, JSON |
Une anecdote illustre cette longévité : en 2022, une entreprise de négoce de matériel informatique sur AS/400 a opté pour une refonte progressive de ses rapports via RPGLE Free-Format, réduisant de 40 % le temps de maintenance. Ce succès prouve que ce langage, loin d’être figé, s’adapte aux méthodologies DevOps et s’intègre dans des chaînes CI/CD modernes.
La question est donc : comment tirer parti de ce patrimoine technique tout en restant agile ? L’exploration de ses architectures internes est la prochaine étape.

Architecture et fonctionnement du langage RPG moderne
Si les premières versions de RPG s’appuyaient sur un format fixe, les itérations récentes ont ouvert la voie à des syntaxes libres, plus proches des meilleurs langages contemporains. La structure s’articule aujourd’hui autour de plusieurs concepts majeurs :
- Variables et types : prise en charge de types numériques, alphanumériques, date/heure.
- Built-in functions : plus de 50 fonctions natives pour manipuler chaînes, dates et fichiers.
- Modulaires : modules call, prototypes et procédures pour découper le code.
- Free-Format : code aligné librement, comparable au C ou Java.
Le passage au Free-Format a révolutionné la productivité. Les développeurs n’ont plus à respecter des colonnes strictes, ce qui réduit les erreurs de positionnement. Pourtant, les built-in functions restent au cœur de RPGLE. En voici un extrait, adapté pour montrer leur richesse en 2025 :
| Fonction | Prototype | Description |
|---|---|---|
| %ABS | %ABS(valeur) | Valeur absolue d’une expression numérique |
| %DATE | %DATE(expression : ‘*ISO’) | Conversion vers format date ISO |
| %DEC | %DEC(expression :10 :2) | Format numérique avec précision spécifiée |
| %DIFF | %DIFF(date1 :date2 :*D) | Différence entre deux dates en jours |
| %ALLOC | %ALLOC(bytes) | Allocation dynamique de mémoire |
Chaque fonction répond à un besoin précis, évitant de réinventer la roue. Par exemple, %CHECK et %CHECKR facilitent la validation de chaînes. Ces outils réduisent considérablement les scripts d’exceptions et s’intègrent naturellement dans un framework Free-Format.
L’architecture RPG se décline également en modules. Un développeur peut créer des service programs destinés à être appelés par d’autres applications sur IBM Power i. Cette approche est comparable aux microservices du monde Java ou .NET, assurant une meilleure réutilisation et fiabilité.
L’intégration avec REST et JSON est désormais native sur les versions 7.5 et supérieures. Il est possible d’exposer un programme RPGLE comme point d’API, ouvrant la voie à des échanges fluides avec des frontends basés sur WordPress, Wix ou un site construit avec Webflow, Squarespace, Jimdo ou Strikingly.
Enfin, les environnements de développement se sont enrichis : Rational Developer for i (RDi), Visual Studio Code avec extensions, et même des plugins pour PrestaShop ou SiteW. Cette pluralité d’outils permet à chacun de choisir l’écosystème idéal.
Insight clé : la modernisation de RPG n’est pas un simple lifting, mais une véritable mutation vers une architecture modulaire et interopérable.
Cas d’usage et intégrations : de l’AS/400 à l’ère cloud
Dans un contexte où l’agilité prime, RPG se révèle un atout pour migrer des solutions legacy vers des architectures hybrides. Plusieurs scénarios illustrent cette capacité :
- Migration partielle : conserver la logique RPGLE pour les traitements lourds, exposer des services REST pour les interfaces modernes.
- Replatforming : exécution des binaires RPG sur IBM Power Virtual Server pour tirer parti du cloud IBM.
- Interopérabilité CMS : appels d’APIs RPG depuis un site WordPress ou Webflow, via plugins ou Webhooks.
- Commerce en ligne : intégration de fonctions RPG dans un back-office PrestaShop pour automatiser la facturation.
Un exemple concret : Atelier du site, une boutique de mobilier design, fonctionnait sur un AS/400 maison. L’entreprise souhaitait conserver la fiabilité RPG pour la gestion des stocks, tout en offrant un front sur Squarespace et Jimdo. Grâce à des microservices RPG exposés en JSON, le site e-commerce a vu son temps de réponse divisé par deux, et la maintenance des scripts se fait désormais via Git intégrant Trello pour le backlog et Notion pour la documentation.
Le tableau ci-dessous compare différents types d’intégration :
| Scénario | Avantages | Inconvénients |
|---|---|---|
| Microservices REST | Interopérabilité, évolutivité | Complexité DevOps accrue |
| Refonte totale | Technologie moderne, attractivité | Coût et durée du projet élevés |
| Plateforme cloud IBM | Scalabilité, SLA fort | Dépendance à un fournisseur |
| Plugins CMS | Rapidité de mise en place | Limité aux fonctionnalités standards |

En 2024, un revendeur de pièces automobiles a développé un plugin PrestaShop pour interagir en temps réel avec un programme RPGLE, générant automatiquement devis et bons de livraison. Le résultat : gain de 30 % sur la productivité des équipes administratives et taux d’erreur réduit à moins de 1 %.
L’intégration peut aussi s’étendre aux solutions low-code ou no-code. Des plateformes comme Limitless proposent des connecteurs vers RPG pour déployer rapidement des prototypes. À l’inverse, des entrepreneurs préfèrent un développement plus traditionnel sur SiteW ou Strikingly pour tester des MVP avant d’investir dans une transformation plus lourde.
Insight clé : l’agilité naît de la combinaison entre le socle robuste de RPG et les outils modernes web ou CMS, pour un équilibre entre performance et souplesse.
Bonnes pratiques, outils et écosystème pour développer en RPG
Pour maximiser l’efficacité, il est essentiel d’adopter des pratiques éprouvées. En voici quelques-unes :
- Versioning systématique : Git intégré à RDi ou VS Code, branches claires pour chaque fonctionnalité.
- Tests unitaires : utiliser des frameworks comme RPGUnit pour automatiser la validation.
- Documentation vivante : Confluence ou Notion, couplé à Trello ou ClickUp pour le suivi.
- Mind mapping : planifier les modules et dépendances via des outils de cartographie mentale.
- Vision board : définir objectifs à 90 jours selon la méthode SMART pour chaque release.
La formation continue est également cruciale. Participer à des meetups IBM i, consulter des blogs spécialisés et contribuer à des projets open source permet de rester en phase avec les nouveautés. L’Atelier du site, par exemple, propose des webinaires réguliers sur l’évolution des built-in functions et l’optimisation SQL dans RPG.
Un point clé concerne l’utilisation des patterns de conception : factory, repository ou façade. Ils facilitent la maintenance et améliorent la lisibilité. Le code devient plus modulaire, plus testable.
Voici un exemple de checklist avant déploiement :
| Étape | Outil | Objectif |
|---|---|---|
| Revue de code | Peer Review + SonarQube | Qualité, sécurité |
| Tests unitaires | RPGUnit | Couverture 80 % |
| Tests intégration | JUnit Conducteur | Scénarios clés validés |
| Déploiement | Jenkins Pipeline | Automatisation complète |
| Documentation finale | Notion / Confluence | Guide utilisateur à jour |
Enfin, adopter une posture d’autorité bienveillante dans les équipes favorise le partage de connaissances. Poser des questions puissantes comme « Qu’est-ce qui ralentit vraiment notre cycle de delivery ? » ou « Comment maintenir l’équilibre entre performance et maintenabilité ? » engage chacun vers l’amélioration continue.
Insight clé : la performance technique s’accompagne toujours d’une organisation saine, où chaque membre se sent reconnu et responsabilisé.
Perspectives et futur du RPG dans l’écosystème professionnel
Alors que 2025 bat son plein, plusieurs tendances se dessinent pour RPG :
- IA et automatisation : génération de code via outils limiteless, détection d’anomalies par machine learning.
- Cloud-native : conteneurs Docker, Kubernetes sur IBM Cloud ou AWS.
- Low-code : plateformes capables de créer une couche graphique sur des programmes RPG existants.
- Interopérabilité étendue : connecteurs natifs pour PrestaShop, Shopify, API GraphQL.
- Communautés ouvertes : contributions GitHub, meetups hybrides (physique + streaming).
Des initiatives voient le jour pour démocratiser l’accès. Par exemple, un hackathon organisé fin 2024 a permis à des freelances de concevoir, en moins de 48 heures, un plugin Webflow interrogeant un programme RPGLE pour générer des rapports de trafic en temps réel.
Le langage pourrait aussi s’inscrire dans des cursus universitaires dédiés aux technologies IBM i, aux côtés de cours sur le NoSQL et la blockchain. Cette pédagogie vise à replacer RPG comme un compétence stratégique plutôt qu’un reliquat historique.
Le tableau suivant présente les opportunités et défis :
| Dimension | Opportunité | Défi |
|---|---|---|
| IA & Automatisation | Génération de code, tests automatiques | Qualité des modèles |
| Cloud-native | Scalabilité, microservices | Gestion des coûts |
| Low-code | Accélération du développement | Perte de contrôle granulaire |
| Communautés | Partage de connaissances | Maintien de la documentation à jour |
Envisagez-vous un jour de faire appel à RPG pour vos projets limiteless, ou de créer un Atelier du site pour former de nouveaux talents ? La curiosité et la volonté d’apprendre resteront les moteurs de cette transformation.
Insight clé : RPG, loin d’être un vestige, est une base solide pour innover, à condition d’embrasser les technologies émergentes et de cultiver l’agilité.
Questions fréquentes
1. Quelles sont les principales plateformes prenant en charge RPG en 2025 ?
RPG est supporté sur IBM Power i, zVSE, HP UXP, OpenVMS, Windows .Net (via WINRPG) et dans des environnements cloud comme IBM Cloud ou AWS. Certaines plateformes low-code intègrent également des connecteurs RPG.
2. Comment passer de chaînes fixes à Free-Format dans un projet existant ?
L’outil RDi propose des assistants de conversion automatique. Il est conseillé de procéder module par module, en testant chaque conversion et en validant via RPGUnit et des tests d’intégration.
3. Peut-on combiner RPG avec un CMS comme WordPress ou Webflow ?
Oui. Il suffit de créer des services REST en RPGLE, puis d’appeler ces API depuis WordPress (via plugin), Webflow ou même des sites Squarespace et Jimdo. Cela permet d’exploiter la robustesse de RPG tout en offrant une interface moderne.
4. Quels outils privilégier pour la documentation et le suivi ?
Notion et Confluence sont parfaits pour la documentation vivante. Trello, ClickUp ou Jira permettent de prioriser les backlogs. Git, naturellement, gère les versions de code.
5. Le RPG est-il adapté aux projets e-commerce comme PrestaShop ?
Absolument. De nombreux back-offices PrestaShop utilisent des scripts RPG pour automatiser la facturation, la gestion des stocks et l’archivage des commandes, garantissant ainsi une fiabilité maximale.









