stanford-oval/wikipedia huggingface dataset:
רב פפא
חבריו

רב זביד ורב הונא בריה דרב יהושע חלקו על חברם רב פפא בקביעות. ברוב הפעמים בתלמוד שישנו חולק על רב פפא, הוא רב זביד או רב הונא בריה דרב יהושע.
עם חבריו נמנה רב אדא בר אבא. על כך מסופר, כי מנהגו של רב נחמן בר יצחק היה שמדי יום לפני שנכנס לדרשה היומית היה נוהג לסכם את יסודות הסוגיה עם רב אדא, וכך הייתה הסוגיה ברורה לו ונכנס לדרשה. באותו יום שנפטר רב אדא, עיכבו אותו רב פפא ורב הונא בריה דרב יהושע, שלא היו במעמד סיום המסכת שערך רבא למסכת, ושאלו אותו כיצד למד רבא הלכות מסוימות בהלכות מעשר בהמה. רב אדא אמר להם את תורתו של רבא, ובינתיים חיכה רב נחמן בר יצחק לרב אדא שיבוא ללמוד עמו ולסכם את יסודות הסוגיה. זמן הדרשה כבר הגיע, אך רב נחמן בר יצחק התעכב, מפני שהמתין לרב אדא שיכין עמו את השיעור. שאלו תלמידיו את רב נחמן: מאוחר כבר, מדוע מחכה רבנו? השיב רב נחמן בר יצחק: מחכה אני שתבוא לכאן מיטתו של רב אדא בר אבא שנפטר. מיד יצא כרוז שנפטר רב אדא.
בדורו חי רב כהנא (הרביעי). הוא העריך את רב פפא ורב הונא בריה דרב יהושע, כאשר אחד מתלמידיו שאל אותו שאלות באגדה הוא הוכיח אותו על שאינו לומד לפני רב פפא ורב הונא בריה דרב יהושע שעוסקים באגדות שקיבלו מרב חסדא ורבה בריה דרב הונא.
אודות פגישתו עם האמורא רב שמואל, מסופר בתלמוד כי רב פפא נקלע לעיר תואך, ושאל האם יש בעיר תלמיד חכם שיוכל להפגש עמו. אשה זקנה ששהתה במקום אמרה לו, כי יש בעיר תלמיד חכם הלומד משניות במשך כל היום, ויהי רצון - אמרה האשה - שתהא כמוהו. כאשר שמע רב פפא את הברכה שברכה אותו האשה, שיהא כמו רב שמואל, הבין שככל הנראה מדובר באדם ירא שמים, והלך לבקר בביתו. רב שמואל שמח לכבוד האורח החשוב ושחט לכבודו שור. בסעודה, התפתחה שיחה בין השניים, ובתוך הדברים נפגע רב פפא והלך לביתו של רב שימי בר אשי.
כן נמנו על חבריו שלושה מבניו של רב איקא: רב הונא שלעיתים גם התארח בביתו. אחיו של רב הונא, רב אחא, המוזכר בתלמוד עשרות פעמים בדיונים הלכתיים עם רב פפא, עם חבריו נמנה גם רב חנינא, בנו של רב איקא. במסכת ברכות מסופר כי רב פפא ורב הונא בריה דרב יהושע הלכו בדרך, ומצאו את רב חנינא בריה דרב איקא. אמרו לו רב פפא ורב הונא שעל פי ההלכה כאשר הם ראו אותו הם נתחייבו בשתי ברכות: ברוך שחלק מחכמתו ליראיו, וברכת שהחיינו, בהתאם לפסקו של רבי יהושע בן לוי שמי שלא ראה את חבירו שלושים יום מברך על ראייתו ברכת שהחיינו. נענה רב חנינא בר איקא: אני ברכתי על ראייתכם ברכה נוספת מלבד ברכה זו, הלא היא ברכת חכם הרזים, שכן חשובים אתם לי כשישים ריבוא יהודים, שעל ברכתם מברכים "ברוך חכם הרזים". רב פפא ורב הונא השתוממו מחכמתו הגדולה של רב חנינא ואמרו לו: "חכימת כולי האי" - עד כדי כך מגיעה חכמתו? בעקבות התפעלות זאת פגעה עין הרע ברב חנינא והוא נפטר: "יהבי ביה עינייהו ושכיב".
רב משרשיא, גם הוא תלמיד של רבא היה חברו הקרוב של רב פפא ואף שלח את בנו ללמוד לפני רב פפא, כן נמנו על ידידיו רב פפי, ורבינא שלמד יחד עמו אצל רבא ודן עמו יחד בהלכה.
תלמידיו

על תלמידיו נמנו רב אידי בר אבין (השני), רמי בר אבא ורב פפא בר אבא.
הונא בריה דרב נחמן היה תלמידו המובהק, וכאמור גם היה חתנו.
תורותיו > באיסורים

אחד מפסקיו המפורסמים של רב פפא הוא הפסק המתייחס למעשה בו גוי בא על אשה משבט לוי, וקובע כי העובר הנולד מיחסים אלו, נחשב כבן שבט לוי לעניין הלכות פדיון הבן שבה בני השבט פטורים ממתן חמישה סלעים לכהן. אמרה זו, הקובעת לכאורה כי הגוי אינו נחשב על פי ההלכה לאביו של התינוק ויחוסו של התינוק נקבע על ידי יחוסו של אבי אמו, עומדת בסתירה, לכאורה, למחלוקת האמוראים אודות הפסק המתייחס לגוי הבא על בת ישראל, שבה קיימת דעה שהבן פסול מכיוון שאביו הוא גוי. בביאור פסק זה נתקשו פרשני התלמוד. רבי חיים סולובייצ'יק מבריסק פירש כי לעניין פדיון הבן ישנם שני דינים המשפיעים על שיוכו של לוי לשבט: 1. הדין ההלכתי המשייך את הלוי למשפחת הלוייה. 2. גם הקרבה הגנטית של שבט הלוייה שאינה קרויה לשיוכו המשפחתי של הלוי, מחשיבה את הלוי ככזה לעניין פדיון הבן, ובתנאי שאינו משתייך הלכתית לשבט אחר, (כדוגמת התינוק שנולד מאב גוי). הסברים דומים ניתן למצוא גם בדברי המהר"ם שיק ופרשנים אחרים. לפי פרשנות אחרת, המבוססת על דברי התוספות במסכת בבא בתרא (פא, א) התואר אב הוא תואר המוענק לגבר הקרוב ביותר ביולוגית לתינוק מצד מולידיו, ובהיעדר אב יהודי נחשב הסב, אבי האם כאביו הביולוגי. דיון זה מעורר השלכות רבות על דיניהם של יהודים הנוצרים משיבוט.
תורותיו > במשפט העברי

פסקים רבים במשפט העברי מוזכרים על שמם של רב פפא ורב הונא בריה דרב יהושע במשותף, כמסכימים וכחולקים. כך למשל, בעניין שיטת התשלומין במשפט העברי הקובעת כי תשלום עבור חוב, נזק, לקדש אישה או כל תשלום אחר המושת על האדם, לא חייב להעשות באמצעות כסף ממש, אלא ניתן לשלמו באמצעות כל דבר בעל ערך. דין זה נלמד משני פסוקים: ”ישיב גאולתו מכסף מקנתו” העוסק בעבד עברי, ו”כסף ישיב לבעליו”, העוסק בדיני נזיקין. בתלמוד למדים מפסוקים אלה באמצעות מדרש: ”"ישיב", לרבות שווה כסף ככסף, ואפילו סובין.” כלומר, ניתן לשלם בכל דבר השווה כסף, גם דבר פחות ערך.
המשפט הידוע טוביה חטא וזיגוד מינגד נוצר בעת דין תורה בבית דינו של רב פפא. הסיפור מובא במסכת פסחים: מעשה שטוביה חטא ובא זיגוד לבדו והעיד בו לפני רב פפא. הלקה רב פפא את זיגוד. אמר זיגוד לרב פפא: הייתכן שטוביה חטא וזיגוד לוקה?! אמר לו רב פפא לזיגוד: כן! נאמר ”לֹא יָקוּם עֵד אֶחָד בְּאִישׁ לְכָל עָו‍ֹן וּלְכָל חַטָּאת”, נמצא שעדות יחיד אינה מתקבלת בבית הדין, ומכיוון שהעדת בו לבדך ואין לעדות כל תוקף חשובה עדותך כהוצאת שם רע שהעונש עליו הוא מלקות. רש"י מסביר שלאחר המעשה שאירע, שרב פפא העניש את זיגוד במלקות, נוצר הפתגם על פי אותו מאורע: "טוביה חטא וזיגוד מינגד?!"
תורותיו > במשפט העברי > 'פריעת בעל חוב מצווה'

רב פפא ורב הונא בריה דרב יהושע היו חלוקים בסוגיית "פריעת בעל חוב מצווה". לדעת רב הונא החובה לשלם את סכום ההלוואה היא חובה משפטית מלאה, כפי שמי ששומר פקדון מחויב להשיב אותו לבעליו בבוא המועד שנקבע מראש. ואילו רב פפא סבר כי אין להשוות בין שתי החובות הללו. שכן, הפיקדון נשאר בבעלותו של המפקיד, וזכותו לתבוע את החפץ השייך לו, הגם שנמצא ברשותו של הנפקד; לעומת זאת, הכסף נמסר ללווה לשם שימוש בו, והוא למעשה אינו ברשותו של הלווה. וכל כך בסוברו, כי יסודה של החובה להחזיר את הכסף למלווה היא במצווה להתנהג ביושר, למלא אחר הבטחה ולאמת את דבריו על פי הפסוק: "הין צדק", ופרשנות חז"ל: "שיהא הן שלך צדק ולאו שלך צדק"; ומכאן, שהחזרת חוב כספי היא קיום מצוות עשה.
גישה אחרת, סוברת כי בדבריו של רב פפא ניתן לראות שלמעשה לא קיים המושג משפט עברי, ולא קיימים חוקים משפטיים בנפרד ממצוות התורה. המחייב היחיד לפריעת חוב, הוא רק במצוות הפריעה, ולכן סובר רב פפא שקטן, שאינו חייב במצוות, אינו חייב לשלם את חובו למלווה. כך למשל היא דעתו של משה זילברג בספרו "כך דרכו של תלמוד", וגישתו של אפרים אלימלך אורבך. זילברג מוסיף ומצטט את דברי רש"י במסכת כתובות (פו, א), שאף מצא את מקור המצווה בפסוק "הין צדק" (ויקרא י"ט ל"ו), שדרשו מזה חז"ל "שיהא הן שלך צדק", כלומר - על אדם מוטל לקיים את אשר הבטיח ולהחזיר את דמי החוב שעליו התחייב. כך שהחיוב היחיד להחזיר את החוב נלקח מפסוק ולא מהסברא המשפטית הפשוטה. לפי גישתו של פרופסור עמיחי רדזינר, מחלוקת זו בפרשנות הגמרא, קשורה למחלוקת הכללית בין פרשני ההלכה והתלמוד: האם היהדות גורסת כי קיים מוסר עצמאי מכח הסברא, המחייב את כללי המשפט העברי ושאליו מתייחסים חוקי התורה, או שמא גישת המוסר והמשפט אף היא נקבעת אך ורק לפי כללי התורה, כמו שקובע החזון איש בספרו "אמונה וביטחון".
רב פפא קובע כי כאשר חלפן כספים טועה ומייעץ ללקוח אודות מטבע מסוימת שכדאי להשקיע בה, הוא נושא באחריות, אך אם הוא מומחה וידוע בתחומו הוא פטור. הוא מסביר את פסקו זה בכך שחזקה על המומחה שהוא עושה את מלאכתו נאמנה, ואם טעה בייעוץ שנתן, יש להניח שהיה זה מחמת כוח עליון, אלא אם כן יוכח אחרת. ומאחר שאין כאן אשמה, אין כאן גם אחריות בנזיקין. לעומת זאת, יועץ שאינו מומחה, המסתכן במתן ייעוץ בעניין הדורש מומחיות נוהג ברשלנות, וכדברי התוספות: "לא היה לו לראות את המטבע ולחוות את דעתו עליו אם אינו מומחה כמו דנכו ואיסור", ולכן הוא חייב לשפות את מי שניזוק בעקבות חוות הדעת שלו.
תורותיו > הלכות ברכות

גישתו של רב פפא הייתה כי במקום שניתן לצאת ידי חובה לפי כל הדעות יש לעשות כך. כך למשל גישתו בהלכות ברכות הייתה, שבמקרה של מחלוקת יש לומר את כל השיטות, ובכך לצאת ידי חובת כל הדעות.
תורותיו > הלכות ברכות > ברכת אשר יצר

כך למשל קיימת מחלוקת בברכת אשר יצר כיצד לחתום את נוסח הברכה. רב פסק שיש לחתום "רופא חולים", אך פסק זה של רב ספג ביקורת חריפה משמואל שאמר על רב: רב עשה את כל העולם כחולים!? ופסק שמואל שיש לחתום "רופא כל בשר". רב ששת פסק שיש לחתום במילים "מפליא לעשות". רב פפא הכריע שיש לומר רופא כל בשר ומפליא לעשות, ובכך לצאת הן ידי חובת הברכה לפי דעת שמואל, והן לפי דעת רב ששת. לעומת זאת, נמנע רב פפא מלהוסיף לנוסח החתימה את המילים שעליהן העביר שמואל ביקורת.
תורותיו > הלכות ברכות > ברכת זוכר הברית

כמו כן נחלקו החכמים איזו ברכה לברך בראיית הקשת: בתלמוד מובא כי מקובל שיש לברך "ברוך זוכר הברית", אך מובאת ברייתא שבה קובע רבי ישמעאל בנו של רבי יוחנן בן ברוקא שיש לברך "נאמן בבריתו וקיים במאמרו", רב פפא מכריע: כי יש לומר את שני הנוסחים - "זוכר הברית נאמן בבריתו וקיים במאמרו".
כמו כן, הכריע רב פפא אודות חתימת הברכה שלאחר קריאת המגילה שלפי החכמים "הנפרע לישראל מכל צריהם", ולפי רבא חתימת הברכה היא "האל המושיע", כי יש לומר "הנפרע לישראל מכל צריהם האל המושיע".
אף לעניין ברכות התורה, גרסת הרי"ף והרא"ש: "אמר רב פפא הילכך נמרינהו לכולהו".
תורותיו > הלכות ברכות > מודים דרבנן

אף נוסח מודים דרבנן הנדפס בסידור התפילה הוא נוסח מאחד של כל השיטות, כפי שיסד רב פפא, בתלמוד מובא: ”בזמן ששליח צבור אומר "מודים" העם מה הם אומרים?” רב הורה לומר "מודים אנחנו לך ה' אלהינו על שאנו מודים לך". שמואל סבר כי יש לומר במקום המילים "ה' אלקינו", את המילים "אלקי כל בשר", ואילו רב סימאי סבר שיש לומר במקום מילים אלו את הנוסח "יוצרנו יוצר בראשית". לפי גרסת נהרדעא בשם רבי סימאי, הוא הוסיף נוסח שונה: "ברכות והודאות לשמך הגדול על שהחייתנו וקיימתנו, על שאנו מודים לך". רב אחא בר יעקב הוסיף את המילים "כן תחיינו ותחננו ותקבצנו ותאסוף גליותינו לחצרות קדשך לשמור חוקיך ולעשות רצונך בלבב שלם על שאנו מודים לך". רב פפא הכריע שיש לומר נוסח הכולל את כל השיטות וזהו הנוסח שבימינו.
תורותיו > פשרות בין שיטות הלכתיות

לא רק בהלכות ברכות שימש רב פפא כפוסק אחרון וכמאחד בין שיטות שונות, אלא גם בהלכות שונות ומגוונות. אחת מהן היא בהלכות השהייה בשבת. במשנה מופיע כי "מאחיזין את האור במדורת בית המוקד ובגבולין כדי שתאחוז האור ברובו". נחלקו החכמים מה דינו של עץ יחידי, ושאלו: האם יש להמתין עד שתאחוז האש ברוב הקיפו או שמא רוב עוביו? ורב פפא הכריע כי יש להמתין עד שתאחוז האש ברוב היקפו וברוב עוביו. פשרה דומה הכריע בהלכות טרפות, אודות ההלכה האומרת כי אם נשתייר מכבדה של הבהמה כזית אינה טרפה, ונחלקו החכמים להיכן הכוונה, וכן הכריע בהלכות איסור והיתר, אודות אכילת חגב, שבו נחלקו החכמים אם סימן הטהרה שנאמר במשנה ש"כנפיו חופין את רובו" הכוונה לרוב ארכו או שמא לרוב הקיפו.
תורותיו > פירוש פסקים

רב פפא עוסק רבות בפירוש פסקים של חכמים שהיו לפניו. כך למשל אודות המחלוקת בין רב ולוי האם מטבע נקנה בחליפין. הוסבר על ידי רב פפא, כי לא ניתן להחליף מעות בדבר אחר בתורת חליפין, מכיוון שלכסף אין חשיבות עצמית אלא על הצורה החקוקה בו והנותנת לו את שוויו, ומכיוון שאם יחליט המלך או הממשלה להחליף את המטבע לסמל אחר הוא לא יהיה שווה יותר כמובן, אין הוא נחשב ל"דבר מסוים" (מסוים = שלם) כדוגמת נעל, שהיא מסוימת ושלימה ויש לה שווי עצמי שאינו בטל לעולם.
תורותיו > אגדות ואמרות

רב פפא אמר: בית שיש בו חתול, לא ילך בו אדם ללא נעליים, שכן החתול אוכל נחשים אותם הוא מוצא, ומתוך גופו של הנחש המת נושרות על הארץ עצמות העלולות לחדור לרגליו של הצועד במקום כשהוא יחף. לפי גרסה אחרת אמר: בית שאין בו חתול, לא יכנס בו אדם, שמא ייכרך עליו נחש ללא ידיעתו.
במסכת שבת מובאת בשם רב פפא האמרה "לית דעניא מכלבא ולית דעתיר מחזירא" אין עני יותר מכלב, ואין עשיר יותר מחזיר
קבורתו

על פי מסורת יהודית, שמקורה בימי הביניים, נמצא קברם של רב פפא ובניו בהר שנאן אשר בגבול ישראל - לבנון. על פי אותה מסורת קבור במקום גם האמורא רב אשי.
לקריאה נוספת

מנחם אלון, המשפט העברי - תולדותיו, מקורותיו, עקרונותיו, הוצאת מאגנס, 1973.
ישראל דנדרוביץ, לפתרון תעלומת הלעז שהוציא רב פפא, מוריה, 29, ח-י, תשס"ט-2009, עמ' קסה-קעא.
שמואל יששכר שפרכר, מועד למינו ומועד לשאינו מינו: פלוגתת רב פפא ורב זביד ופסיקת ההלכה, מגל, ט"ו, תשס"ז-2007, עמ' 259–273.
אהרן ארנד, הזכרת בני רב פפא בסיום הלימוד, סידרא, ה', תשמ"ט-1989, עמ' 17–25.
אילן קופמן, שעבודא דאורייתא - בירור בדעת רב פפא, אבני משפט, א, תשס"ב-2002, עמ' 20–43.
צבי דור, המסורות הארצישראליות במשנתו ההלכתית של רב פפא (תורת אמוראי ארץ-ישראל בתלמודו של רב פפא), הקונגרס העולמי למדעי היהדות, 4, 1, תשכ"ז, עמ' 157–162.
עירי כהן

| --- | --- |
אין תמונה חופשית
 מדינה:  ישראל 
 השתייכות:   צבא הגנה לישראל
 דרגה:    תת-אלוף
 תפקידים בשירות
 מפקד גדוד 697  מפקד עוצבת חצי האש  מפקד עוצבת האש
 פעולות ומבצעים
   מלחמת ששת הימים   מלחמת ההתשה   מלחמת יום הכיפורים   מלחמת לבנון  האינתיפאדה הראשונה    המערכה ברצועת הביטחון מלחמת ההתשה
 
עירי כהן הוא תת-אלוף במילואים בצה"ל. כיהן בין היתר כמפקד חטיבת מילואים מובחרת של הצנחנים וכמפקד עוצבת האש (אוגדה 98).
שירותו הצבאי

עם גיוסו לצה"ל התנדב כהן לחטיבת הצנחנים ושובץ בגדוד 890. בצנחנים עבר מסלול הכשרה כלוחם, קורס מ"כים חי"ר וקורס קציני חי"ר. במהלך שירות המילואים השלים קורס מפקדי פלוגות וקורס מפקדי גדודים. כמפקד מחלקה בגדוד צנחנים במילואים לחם כהן במלחמת ששת הימים בחזית הדרום ובחזית רמת הגולן, כסמ"פ לחם במלחמת ההתשה ובמלחמת יום הכיפורים בחזית רמת הגולן ובחזית הדרומית. לאחר המלחמה שימש כהן במספר תפקידי פיקוד והיה בצוות ההקמה של עוצבת חצי האש. כמו כן פיקד ארבע פעמים על קורס מפקדי פלוגות עורב. במלחמת לבנון הראשונה שימש כמפקד גדוד 697 גדוד צנחנים במילואים בעוצבת חצי האש. במהלך מלחמה זו פיקד על מארב שביצע גדודו כנגד חטיבת שריון סורית. הקרבות ארכו כיומיים, ובמהלכם השמיד הגדוד, באמצעות טילי נ"ט, ובסיוע טנקים וכוחות חי"ר, עשרות טנקים, רק"ם ושלושה מסוקי קרב מסוג גאזל. בהמשך נקרא לשוב לשירות קבע, עבר קורס מפקדי חטיבות ומונה למפקד החטיבה בה שימש כמ״פ, סמג״ד ובהמשך מג"ד. עם פרוץ מלחמת המפרץ הראשונה, זמן קצר לאחר שובו לשירות סדיר כמפקד עוצבת חצי האש (חט׳ 551), נקראה העוצבה לקחת חלק בתכנון ובהכנות האינטנסיביות ללחימה בעומק.
עם סיום תפקידו כמפקד עוצבת חצי האש, מונה כהן לתפקיד סגן מפקד עוצבת האש ושנה לאחר מכן למפקד עוצבת האש (אוגדה 98) בדרגת תא"ל, תפקיד אותו מילא במשך כשלוש שנים. במהלכן התמקדה פעילות העוצבה בפיתוח תורת לחימה ייעודית, פיתוח ושכלול טכניקות לחימה, פיתוח והטמעה של אמל״ח ייעודי, ארגון ובניין כוח והכשרות. במהלך תקופת פיקודו על עוצבת חצי האש ועוצבת האש, ביצעה עוצבת האש מספר רב של מבצעי עומק ונטלה חלק משמעותי במבצע ענבי זעם. עם סיום תפקידו כמפקד העוצבה, נשלח כהן מטעם מערכת הביטחון לשליחות של כשנתיים בחו"ל. בשובו משליחות זאת השתחרר מצה"ל. לאחר שחרורו היה במשך כ-6 שנים עמית מחקר במכון לחקר תורת המערכה. חבר בוועדת חקירה מטכ״לית לתפיסת ההפעלה במלחמת לבנון השנייה.
הערות שוליים

↑  דני ברנר, כולם היו בניו, ישראל היום, ‏ 29.09.2010.
↑   גל פרל, "צה"ל, צה"ל, כבר באים – רות סוף, סוף למילואים"?, באתר צה"ל, 15 באפריל 2023.
↑  עידו גפן, "קרב מורשת", במחנה, ‏ 07.06.2012, עמוד 32.
ערך זה הוא קצרמרבנושא קציני צה"ל. אתם מוזמנים לתרום לוויקיפדיה ו.
RPG (שפת תכנות)

| --- | --- |

 פרדיגמות:  תכנות פרוצדורלי 
 תאריך השקה:  1959 
 מפתח:  IBM 
 גרסה אחרונה:  7.4 
 ניבים:  RPG, RPG II, RPG III, RPG 400, RPG IV, RPG/ILE; RPG/Free, Baby/36, Baby/400, Lattice RPG, VAX RPG II
 הושפעה על ידי:  9PAC, FARGO
 
RPG (ראשי תיבות של Report Program Generator) היא שפת תכנות עילית ליישומים עסקיים, שהוצגה בשנת 1959 למחשב IBM 1401. היא ידועה בעיקר כשפת התכנות העיקרית של קו מוצרי מחשבי הביניים של IBM, בהם מחשב System/3 וממשיכיו. השפה הציגה מספר מושגים ייחודיים, כגון מחזור התוכנית ותחביר מכוון העמודות. הגרסה העדכנית ביותר של השפה היא RPG IV, הכוללת מספר תכונות מודרניזציה, כולל תחביר בצורה חופשית.
פלטפורמות

שפת RPG נוצרה על ידי חברת IBM למחשבי IBM 1401, ובהמשך הותאמה למחשבי IBM 7070 ו-IBM System/360. גרסה מתקדמת, RPG II, שימשה את מחשבי הביניים של IBM, הסדרות System/3, System/32, System/34, System/38, System/36 ו-AS/400. השפה שימשה גם במחשבי VAX ובמחשבים של יצרנים נוספים.
היסטוריה

עם פיתוחה של השפה בשנת 1959, השם Report Program Generator תיאר את מטרתה: הפקת דוחות מקובצי נתונים. אתר FOLDOC (אנ') מייחס לעובד IBM וילף היי {Wilf Hey) את פיתוח RPG. שפת FARGO הייתה קודמתה של RPG במחשבי IBM 1401. שתי השפות נועדו להקל על המעבר מציוד לעיבוד נתונים של IBM למחשביה החדשים. מפעילי ציוד לעיבוד נתונים היו רגילים לחווט לוחות בקרה כדי ליישם פעולות קלט, פלט, בקרה ומנייה בשלבים שנקראו מחזור מכונה; FARGO ו-RPG חיקו את הרעיון של מחזור המכונה עם מחזור התוכנית. RPG הייתה עדיפה על פני FARGO והחליפה במהירות את FARGO כתוכנית המועדפת של מחולל דוחות.
IBM הטמיעה מאוחר יותר את RPG, אך לא את FARGO, במחשבי IBM 7070.
השפות החלופיות הזמינות בדרך כלל באותה תקופה היו שפת סף, COBOL או FORTRAN. שפת סף ו-COBOL היו נפוצים יותר במחשבי מיינפריים System/360 דגמי 30 ומעלה, ו-RPG הייתה נפוצה יותר במחשבי System/360 דגם 20.
היסטוריה > RPG II

RPG II הוצגה בערך בשנת 1969, עם סדרת המחשבים System/3. מאוחר יותר הוא שימש ב-System/32, System/34 ו-System/36, עם גרסה משופרת של השפה. RPG II הייתה זמינה גם עבור מערכות גדולות יותר, כולל מחשבי IBM System/370 המריצים את מערכת ההפעלה DOS/VSE (לאחר מכן VSE/SP, VSE/ESA ו-z/VSE). חברת ICL יצרה גם גרסה למערכת ההפעלה VME/K שלה.
בימים הראשונים של RPG, הכוח העיקרי שלו היה מחזור התוכנית. מתכנת כתב קוד כדי לעבד רשומה בודדת, ומחזור התוכנית ביצע קוד זה על כל רשומה של קובץ הקלט, וידאג לזרימת הבקרה. באותו זמן כל רשומה (כרטיס מנוקב בודד) הושוותה לכל שורה בתוכנית, שתפעל לפי הרשומה, או לא, בהתבסס על האם בשורה הזו היה "מחוון" מופעל או "כבוי". האינדיקטור כלל קבוצה של משתנים לוגיים שמספרם 01-99 למטרות מוגדרות על ידי המשתמש, או קבוצות קטנות אחרות המבוססות על פונקציות עיבוד רשומות, שדות או דוחות. הקונספט של שבירות רמות והתאמת רשומות ייחודי לשפת RPG II, והוא פותח במקור מתוך מחשבה על קוראי כרטיסים מנוקבים. תוכניות RPG שנכתבו כדי לנצל את מחזור התוכנית יכולות לייצר דוחות מורכבים עם הרבה פחות שורות קוד מחשב מאשר תוכניות שנכתבו ב-COBOL ובשפות אחרות לעיבוד נתונים.
חלק התוכנית File Specifications פירט את כל הקבצים הנכתבים, נקראים או מתעדכנים, ואחריהם בא הפרק Data Definition Specifications, המכיל רכיבי תוכנית כגון מבני נתונים ומערכים, בדומה למקטע "Working Storage" של תוכנית COBOL. לאחר מכן, הפרק Calculation Specifications הכיל את הוראות עיבוד. בפרק Output Specifications ניתן להשתמש כדי לקבוע את הפריסה של קבצים או דוחות אחרים. לחלופין, קבצים, מבני נתונים ודוחות מסוימים יכולים להיות מוגדרים חיצונית, ובעיקר מבטל את הצורך לספק מפרטי קלט ופלט.
היסטוריה > ההוראות בשפה

בפרק החישוב של התוכנית ניתן לתת את ההוראות הבאות (קוד ההוראה נכתב בטורים 28–32):
| קוד ההוראה | משמעות |
| --- | --- |
ADD: Add
SUB: Subtract
MULT: Multiply
DIV: Divide
Z-ADD: Zero and Add
Z-SUB: Zero and Subtract
MVR: Move Remainder
MOVE: Move
MOVEL: Move Left
MHLZO: Move High to Low Zone
MLHZO: Move Low to High Zone
MLLZO: Move Low to Low Zone
MHHZO: Move High to High Zone
BITON: Bit On
BITOF: Bit Off
TESTB: Test Bit
GOTO: Go To
TAG: Tag (destination of a GOTO)
EXSR: Execute Subroutine
BEGSR: Begin Subroutine
ENDSR: End Subroutine
SETON: Set On
SETOF: Set Off
EXCPT: Exception
EXIT: Exit
RLABL: Redefine Label
ULABL: User Label
CALL1: Call
PARM1: Parameter
CHAIN: Chain
READ: Read
READE: Read Equal
READP: Read Previous
REDPE: Read Previous Equal
SETLL: Set Lower Limits
SET: Set
TIME: Time of day (000000-235959)
DSPLY: Display
SORTA: Sort Array
XFOOT: Crossfoot
MOVEA: Move Array
LOKUP: Lookup (find in array)
היסטוריה > דוגמה

לתוכנית מבנה קבוע. הטור השמאלי ביותר (טור 6) מציין את חלק התוכנית שבו עוסקת השורה, לפי המפתח הבא:
F***************************************************************
     F* THIS PROGRAM READS THE CONTENTS OF AN INVOICE HEADER FILE   
     F* AND PRINTS THE INVOICES PROCESSED FOR THE DATE SET IN THE   
     F* LOCAL DATA AREA.  THERE ARE LEVEL BREAKS AND TOTALS FOR      
     F* EACH STORE.                                                 
     F***************************************************************
     F*
     FINVHDR  IP  F      62            DISK
     FPRINTER O   F     132     OF     PRINTER
     IINVHDR  NS  01   1NC
     I                                        1   3 STORE L1
     I                                        4  13 INVNO
     I                                       14  20 CUSTNO
     I                                       21  45 STNAM
     I                                       46  53 INVDAT
     I                                       54  622TOTINV
     I           UDS
     I                                        1   8 RPTDAT
     C   01      INVDAT    COMP RPTDAT                   11
     C   01 11             ADD  TOTINV    L1TOT   92
     C   01 11             ADD  TOTINV    LRTOT   92
     OPRINTER H  101   1P
     O       OR        OF
     O                         PAGE  Z  106
     O                                  102 'PAGE'
     O                                   59 'VERY BIG'
     O                                   72 'STORES, INC.'
     O                         UDATE Y   17
     O                                    8 'RUN DATE'
     O        H  1     1P
     O       OR        OF
     O                                   73 'DAILY SALES BY STORE'
     O        H  2     1P
     O       OR        OF
     O                         RPTDAT    83
     O                                   63 'FOR DATE:'
     O        H  1     1P
     O       OR        OF
     O                                    6 'STORE'
     O                                   18 'INVOICE'
     O                                   28 'CUSTOMER'
     O                                   58 'CUSTOMER'
     O                                   78 'INVOICE'
     O        H  2     1P
     O       OR        OF
     O                                    6 'NUMBER'
     O                                   18 'NUMBER'
     O                                   28 'NUMBER'
     O                                   58 'NAME'
     O                                   78 'TOTAL'
     O        D  0     L1
     O                         STORE      6
     O        D  1     01 11
     O                         INVNO     18
     O                         CUSTNO    28
     O                         STNAM     58
     O                         TOTINV1B  78
     O        T  1     L1
     O                                   45 'STORE TOTAL...'
     O                         L1TOT 1B  78
     O        T 1      LR
     O                                   45 'GRAND TOTAL...'
     O                         LRTOT 1   78
היסטוריה > RPG III

RPG III נוצרה עבור System/38 ויורשו AS/400. גרסה זו חרגה באופן משמעותי מהשפה המקורית, וסיפקה מבנים מוּבנים מודרניים כמו בלוקי IF-ENDIF, לולאות DO ושגרות. RPG III הייתה זמינה גם עבור מערכות גדולות יותר, כולל IBM System/370 במערכת ההפעלה OS/VS1. זה היה זמין גם מחברת Unisys עבור מערכת ההפעלה VS/9 הפועלת על מיינפריים UNIVAC 90.
היסטוריה > DE/RPG

DE/RPG או Data Entry RPG הייתה זמינה על סדרת IBM 5280 של תחנות עבודה להזנת נתונים בתחילת שנות ה-80. היא הייתה דומה ל-RPG III אבל ללא חלק Data Descriptions חיצוניים (DDS) לתיאור קבצים, כמו ב-System/38 וממשיכיו. במקום זאת, חלק זה היה צריך להיכלל במקור ה-RPG עצמו.
היסטוריה > RPG/400

RPG/400 הייתה למעשה RPG III שפועלת על AS/400. יבמ שינתה את שם המהדר RPG ל"RPG/400" אך בזמן הצגתו הוא היה זהה למהדר RPG III ב-System/38. כמעט כל מוצרי IBM System/38 מותגו מחדש כ-xxx/400 והמהדר RPG לא היה יוצא דופן. תוכנית RPG III עברה הידור עם מהדר RPG/400 ללא שום דבר חדש לשפת RPG III, עד ש-IBM החלה לפתח קודי פעולה חדשים, כגון SCAN, CAT ו-XLATE לאחר מספר שנים של זמינות AS/400. שיפורים אלה ל-RPG III לא היו זמינים בגרסת System/38 של RPG III.
היסטוריה > RPG IV ו-ILE RPG

RPG IV, שנודעה גם בשם ILE RPG, פורסמה בשנת 1995 כחלק מגרסה V3R2 של מערכת ההפעלה OS/400 (הקרויה כיום IBM i). שפת RPG IV הציעה מגוון גדול יותר של הוראות במסגרת Extended Factor-2 Calculation Specification שלה, ובהמשך החיים, פרק Calculation Specifications בפורמט החופשי ותחביר פרוצדורלי. RPG IV במסגרת Integrated Language Environment מכונה ILE RPG, ומדריכים למשתמש מסבירים את הניואנסים של שניהם. RPG IV ו-ILE RPG נתמכים על ידי IBM בפלטפורמת IBM i הנוכחית.
בשנת 2001, עם גרסה V5R1 של OS/400, שפת RPG IV הציעה חופש גדול יותר לחישובים מאשר Extended Factor-2 Calculation Specification: עורך מקור בעל יכולת טקסט חופשית, כחלופה למקור התלוי בעמודות המקורי. החישוב "/FREE" לא חייב שקוד הפעולה ייכתב בעמודה מסוימת; קוד הפעולה הוא אופציונלי עבור פעולות EVAL ו-CALLP; והתחביר בדרך כלל דומה יותר לזה של שפות תכנות למטרות כלליות. עד נובמבר 2013, הפורמט החופשי חל אך ורק על מפרטי החישוב. עם השדרוג של IBM i V7R1 TR7 לשפה, הוראות "/free" ו-"/end-free" אינן נחוצות יותר, והשפה סוף סוף שברה את הקשרים לכרטיסים מנוקבים.
IBM Rational Developer for i (RDi), סביבת פיתוח משולבת מבוססת Eclipse מומלצת על ידי IBM למפתחי RPG.
IBM ממשיכה לשפר את שפת RPG. נוספו עוד פונקציות מובנות (BIF). נוספה יכולת לקשר אל אובייקטי Java, וממשקי תכנות יישומים של IBM; ניתן להשתמש בשפה לכתיבת תוכניות CGI בעזרת ערכת הכלים Cgidev2 Web של יבמ, ארגז הכלים של RPG וחבילות מסחריות אחרות המותאמות לאינטרנט. אפילו עם השינויים, השפה שומרת על מידה רבה של תאימות לאחור, כך שתוכנית RPG שנכתבה לפני 37 שנים יכולה לרוץ היום עם מעט או ללא שינויים.
SQL פרקומפיילר מאפשר למפתחי RPG לכלול הוראות SQL מוטמעות סטנדרטיות ישירות בתוכנית. בעת הידור, ה-SQL פרקומפיילר הופך הוראות SQL לוראות RPG המתקשרות לתוכניות מנהל מסד הנתונים שמיישמות בסופו של דבר את בקשת השאילתה.
שפת RPG IV מבוססת על ערכת התווים EBCDIC, אך תומכת גם ב-UTF-8 וב-UTF-16 וערכות תווים רבות אחרות.
בשנת 2010 השיקה IBM את RPG Open Access, הידועה גם בשם Rational Open Access: RPG Edition. זה מאפשר להגדיר ממשקי קלט/פלט חדשים על ידי מתכנת - מה שמאפשר לקרוא ולכתוב נתונים למקורות ש-RPG אינו מספק להם תמיכה מובנית.