この記事は検証可能な参考文献や出典が全く示されていないか、不十分です。出典を追加して記事の信頼性向上にご協力ください。(このテンプレートの使い方)
出典検索?: "RPG" プログラム言語
RPG
Report Program Generatorパラダイムマルチパラダイムプログラミング言語
登場時期1959年
開発者IBM
最新リリースRPG IV version 7 release 2/ 2014年5月2日 (10年前) (2014-05-02)
型付け強い型付け, 静的型付け
方言RPG, RPG II, RPG III, RPG 400, RPG IV, RPG/ILE; RPG/Free, Baby/36, Baby/400, Lattice RPG
影響を受けた言語9PAC, FARGO
影響を与えた言語RPG II
プラットフォームCPF, SSP, OS/400, IBM i, OS/VS1, z/OS, DOS/VSE, VSE/SP, VSE/ESA, z/VSE, VS/9, PRIMOS, OpenVMS, Wang VS, Burroughs MCP, Windows
テンプレートを表示
プログラミング言語>>他のプログラミング言語
RPG は、ビジネスソフトウェア向けの高水準言語に位置づけられるプログラム言語である。IBM独自の言語であり、IBM-iまたはOS/400のシステム上で動作する。
RPGというプログラム名はReport Program Generatorのアクロニムである。ILE (Integrated Language Environment) のオブジェクト指向機能を取り入れた RPG IVが現行である(ILE RPGとしても知られている)。最初期の第四世代言語 (4GL) とされる。
IBMによって1959年に開発された言語であり、高水準言語としてはFORTRAN、LISP、ALGOL58に次いで古い歴史を持つ。 IBM System i(以前のAS/400)の主力プログラミング言語である。元はクエリー用ツールとして設計されたものだが、IBMが開発に注力したことで強力な言語になった。 典型的なRPGプログラムは File Specification から始まる。ここでは入出力用ファイルを全て列挙する。続いて Data Definition Specification である。これはデータ構造や配列を定義する部分で、COBOLの Working-Storage セクションやPascalの変数定義(var)セクションに大変よく似ている。次はプログラムの動作をコードする Calculation Specification である。出力するレポートのレイアウトを決定する Output Specification を加えてもいいし、外部でそれを決定してもいい。 初期のRPGの売り物はprogram cycleであった。これは、レコードをファイルから読み込む毎にいくつかのRPGプログラムが一つの暗黙のループの中で実行されるというものであり、別の見方をすれば、暗黙のうちに相互作用する一つのプログラムが作り上げられるということになる。現在では、プログラムフローを通常のループで制御しようとするプログラマが多いため、この機能は避けられる傾向にある。 RPGはパンチカード時代から現代まで常用され続けてきた数少ない言語の一つである。IBMがRPGを開発したのは1960年代のことであった。RPGは Report Program Generator のアクロニムで、この名前が目的を表している: データファイルを読み、小計や検算を含んだ会計報告を生成する。 RPGの前身はFARGO
概観
歴史
当時、他に広く用いられていた言語にCOBOLとFORTRANがあった。