Difference between revisions of "Category:RPG"

From MidrangeWiki
Jump to: navigation, search
m (Clarified the meaning of '400' in the explanation in === Objects and RPG ===)
(Rewritten for better flow. Removed redundant, recursive links)
Line 6: Line 6:
 
There are four major versions of RPG currently in use... [[RPG II]], [[RPG III]], [[RPG 400]], and [[RPG IV]] (sometimes referred to as [[ILE]] RPG). The latter has two distinctive flavours: the traditional column restricted language entry and the modern /Free alternative where most of the coding can be entered in a non-column restricted way.
 
There are four major versions of RPG currently in use... [[RPG II]], [[RPG III]], [[RPG 400]], and [[RPG IV]] (sometimes referred to as [[ILE]] RPG). The latter has two distinctive flavours: the traditional column restricted language entry and the modern /Free alternative where most of the coding can be entered in a non-column restricted way.
  
[[RPG]] is available only on [[IBM Midrange]] platforms, this is because the technology has evolved over many years to leverage operating system resources.  Actually, RPG was used on the IBM 1401, System/360, S/370 and follow-ons, as well as HP3000 [http://docs.hp.com/cgi-bin/doc3k/B3031890001.10422/1].  It also ran on Wang, Sperry, Burroughs, and Digital PDP and VAX computers.  While never immensely popular on non-IBM platforms, it did exist outside of IBM.
+
RPG is most commonly associated with [[IBM Midrange]] platforms, however various RPG flavors have been developed for other platforms over the years including the IBM 1401, System/360, S/370 and follow-ons; the Hewlett Packard HP3000 [http://docs.hp.com/cgi-bin/doc3k/B3031890001.10422/1]; as well as Wang, Sperry, Burroughs, and Digital PDP and VAX computers.  While never immensely popular on non-IBM platforms, it did exist outside of IBM.
  
[[OS/400]] contains extensive support for debugging and run-time identification of [[RPG]] code.  There is a large established base of [[RPG]] code in production environments, usually performing heavy-lifting batch-oriented data tasks, or providing support for interactive [[ERP]] applications, either with native [[5250]] interface or with a [[GUI]] or Web [[Skin]] applied over the [[5250]] data stream.
+
[[OS/400]] contains extensive support for debugging and run-time identification of RPG code.  There is a large established base of RPG code in production environments, usually performing heavy-lifting batch-oriented data tasks, or providing support for interactive [[ERP]] applications, either with native [[5250]] interface or with a graphical user interface ([[GUI]]) or Web [[Skin]] applied over the [[5250]] data stream.
  
 
== RPG vs. other languages ==
 
== RPG vs. other languages ==
Line 16: Line 16:
 
* data base access, such as [[DB2]];
 
* data base access, such as [[DB2]];
  
The main perceived flaw with RPG is that it is not object oriented, nor does it contain direct support for [[GUI]] Graphical User Interface.
+
The main perceived flaw with RPG is that it is not object oriented, nor does it contain direct support for a (GUI), although there are [[RPG Third Party]] offerings to fill that gap.
 
 
Although RPG from IBM is perceived as not having good GUI support, there are [[RPG Third Party]] offerings to fill that gap.
 
  
 
=== RPG vs. Java ===
 
=== RPG vs. Java ===
  
A comparison between [[RPG]] and [[Java]] can be made so long as [[Java]] is used in a developer framework or one of the available [[application servers]]. Unlike Java, however [[RPG]] contains language-level features for common business tasks such as database access.
+
A comparison between RPG and [[Java]] can be made so long as Java is used in a developer framework, or one of the available [[application servers]]. Unlike Java, however, RPG contains language-level features for common business tasks such as database access.
  
 
=== Objects and RPG ===
 
=== Objects and RPG ===
  
Although RPG is perceived as not being object-oriented, the operating system (the name of which is OS/400, i5, depending on the version of the OS and the platform on which it runs; but we'll refer to it as OS/400) is composed entirely of objects that can be manipulated by RPG and other languages on the OS/400.
+
Although RPG is perceived as not being object-oriented, the OS/400 operating system is composed entirely of objects that can be manipulated by RPG and other languages.
  
Many versions of RPG, for a long time, have had the capability of importing standardized blocks of code to do standard functions, such as via [[Slash COPY|/COPY]].  Also several versions or RPG support [[CALL]] a sub-program, thus many aspects of object management are facilitated within RPG.
+
RPG has long had the capability of importing standardized blocks of code to do standard functions via [[Slash COPY|/COPY]].  Additionally, several versions of RPG support [[CALL|calling]] a sub-program, thus many aspects of object management are facilitated within RPG.
  
 
== Other Resources ==
 
== Other Resources ==

Revision as of 16:34, 18 January 2008

RPG, which stands for Report Program Generator, is an easy to learn and understand programming language that is well suited for developing business applications.

Programmers, coming to RPG from other programming environments, will still need to get some education to familiarize themselves with its capabilities, and how it functions.

There are four major versions of RPG currently in use... RPG II, RPG III, RPG 400, and RPG IV (sometimes referred to as ILE RPG). The latter has two distinctive flavours: the traditional column restricted language entry and the modern /Free alternative where most of the coding can be entered in a non-column restricted way.

RPG is most commonly associated with IBM Midrange platforms, however various RPG flavors have been developed for other platforms over the years including the IBM 1401, System/360, S/370 and follow-ons; the Hewlett Packard HP3000 [1]; as well as Wang, Sperry, Burroughs, and Digital PDP and VAX computers. While never immensely popular on non-IBM platforms, it did exist outside of IBM.

OS/400 contains extensive support for debugging and run-time identification of RPG code. There is a large established base of RPG code in production environments, usually performing heavy-lifting batch-oriented data tasks, or providing support for interactive ERP applications, either with native 5250 interface or with a graphical user interface (GUI) or Web Skin applied over the 5250 data stream.

RPG vs. other languages

Compared to other programming languages, RPG is especially strong in

  • transactional processing;
  • data base access, such as DB2;

The main perceived flaw with RPG is that it is not object oriented, nor does it contain direct support for a (GUI), although there are RPG Third Party offerings to fill that gap.

RPG vs. Java

A comparison between RPG and Java can be made so long as Java is used in a developer framework, or one of the available application servers. Unlike Java, however, RPG contains language-level features for common business tasks such as database access.

Objects and RPG

Although RPG is perceived as not being object-oriented, the OS/400 operating system is composed entirely of objects that can be manipulated by RPG and other languages.

RPG has long had the capability of importing standardized blocks of code to do standard functions via /COPY. Additionally, several versions of RPG support calling a sub-program, thus many aspects of object management are facilitated within RPG.

Other Resources

midrange.com

RPG400-L mailing list is for general discussion of RPG programming.

RPG Developer Network

They host all sorts of RPG support, discussion groups, downloads.

Original Wikipedia

IBM Software Category http://en.wikipedia.org/wiki/Category:IBM_software

RPG Programming Language, such as RPG IV http://en.wikipedia.org/wiki/RPG_programming_language