Patent US4374408A successfully refreshed from Google Patents.
← Back to Patent Explorer
US4374408A Expired / Lapsed US ⏱️ 0.0 years remaining

Multi-pass system and method for source to source code translation

Assignee: Unisys Corp
•
Filing: 1971-06-16
•
Granted: 1983-02-15
•
Expires: 1991-06-16
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract This disclosure relates to a system embodied in a data processor for source to source code translation of programs, and to the method by which such translation is accomplished. The particular system disclosed is one for translation of programs in the RPG source language to the COBOL source language. The method involves the sequence of four passes through the RPG source code during which, each record is read. On the first pass, the RPG syntax is checked for error and required tables are created. The second pass reads intermediate files and generates COBOL data declarations and also builds tables and switches for later passes. The emitted code is stored on intermediate disk files. During the third pass, executable instructions in COBOL code for the first part of COBOL procedures are generated from a first half of the RPG source and the code thus generated is stored in the COBOL source language file. During the fourth pass, the COBOL source language routines are generated by reading or examining all the entries in the intermediate RPG source file created during the second pass of the routine.

Inventors

  • 👤 Stephen W. Bowles
  • 👤 George E. Bethke, Jr.

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-10-24 15:15
CPC Classifications
G; G06; G06F; G06F8/00; G06F8/40; G06F8/41

Claims Analysis

Total Claims: 24
Claim 1
Independent Claim 253 words
An information processing system responsive to its particular machine language code to translate a routine from a first source higher level language code to a second source higher level language code where said second source higher level language is COBOL, said system comprising: storage means to receive a first plurality of sets of signals representing a routine in a first source code; and processor means, coupled to said receiving storage means and responsive to programmed signals in said particular machine language code to sense said first plurality of sets of signals in a sequence of passes and to generate a second plurality of sets of signals representing said routine in a second source code, said processor means operating to generate, each time during a first pass, sets of signals in said second plurality of sets of signals to represent those commands having direct correspondence to commands represented by sets of said first plurality of sets of signals, said processor means then operating to generate, during a second pass, sets of signals in said second plurality of sets of signals for those commands called for by commands represented by said first plurality of sets of signals but not having direct correspondence thereto and to transmit the second plurality of sets of signals thus generated to said storage means; said processor means being further responsive to programmed signals to generate, in response to said second plurality of sets of signals, a third plurality of sets of signals representing said routine in said particular machine language.
Claim 2
Dependent Claim 253 words
An information processing system responsive to its particular machine language code to translate a routine from a first source higher level language code to a second source higher level language code where said second source higher level language is COBOL, said system comprising: storage means to receive a first plurality of sets of signals representing a routine in a first source code; and processor means, coupled to said receiving storage means and responsive to programmed signals in said particular machine language code to sense said first plurality of sets of signals in a sequence of passes and to generate a second plurality of sets of signals representing said routine in a second source code, said processor means operating to generate, each time during a first pass, sets of signals in said second plurality of sets of signals to represent those commands having direct correspondence to commands represented by sets of said first plurality of sets of signals, said processor means then operating to generate, during a second pass, sets of signals in said second plurality of sets of signals for those commands called for by commands represented by said first plurality of sets of signals but not having direct correspondence thereto and to transmit the second plurality of sets of signals thus generated to said storage means; said processor means being further responsive to programmed signals to generate, in response to said second plurality of sets of signals, a third plurality of sets of signals representing said routine in said particular machine language.
Claim 3
Dependent Claim 58 words
An information processing system according to claim 1 wherein said first source language code implies a general algorithm characteristic of said first code, and wherein: said processor means is adapted to generate in said second plurality of sets of signals including sets of signals representing said general algorithm as required by said first plurality of sets of signals.
Claim 4
Dependent Claim 48 words
An information processing system according to claim 1 wherein: said processor means is adapted to generate sets of signals, for said second plurality of sets of signals, representing definitions of data fields and files called for by the program represented by said first plurality of sets of signals.
Claim 5
Dependent Claim 42 words
An information processing system according to claim 1 wherein: said processor means are adapted to sense said received sets of said first plurality of sets of signals for comparison against acceptable sequences of such sets representing a program free of syntax error.
Claim 6
Dependent Claim 32 words
An information processing system according to claim 4 including: means, coupled to said sense and generating means, to print-out a warning message should said received sets of signals contain a syntax error.
Claim 7
Dependent Claim 169 words
An information processing system for the translation of a routine from a first higher level program language to a second higher level program language and execution of said routine in a particular machine language for that system, said first higher level language implying a general algorithm characteristic of said first program language and said second higher level language being COBOL, said system comprising: storage means to receive a first plurality of sets of signals representing a routine in said first program language; and processor means, coupled to said storage means, to generate each time a second plurality of sets of signals including sets of signals representing said general algorithm as required by said first plurality of sets of signals; said processor means being responsive to programmed signals to generate, in response to said second plurality of sets of signals, a third plurality of sets of signals representing said routine in said particular machine language and to execute said routine in response to said third plurality of sets of signals.
Claim 8
Dependent Claim 169 words
An information processing system for the translation of a routine from a first higher level program language to a second higher level program language and execution of said routine in a particular machine language for that system, said first higher level language implying a general algorithm characteristic of said first program language and said second higher level language being COBOL, said system comprising: storage means to receive a first plurality of sets of signals representing a routine in said first program language; and processor means, coupled to said storage means, to generate each time a second plurality of sets of signals including sets of signals representing said general algorithm as required by said first plurality of sets of signals; said processor means being responsive to programmed signals to generate, in response to said second plurality of sets of signals, a third plurality of sets of signals representing said routine in said particular machine language and to execute said routine in response to said third plurality of sets of signals.
Claim 9
Dependent Claim 42 words
An information processing system according to claim 6 wherein: said processor means is adapted to sense said received sets of said first plurality of sets of signals for comparison against acceptable sequences of such sets representing a program free of syntax error.
Claim 10
Dependent Claim 30 words
An information processing system according to claim 7 including: means, coupled to said processor means, to print-out a warning message should said received sets of signals contain a syntax error.
Claim 11
Dependent Claim 187 words
In a data processing apparatus responsive to its particular machine language, the method for the translation of a routine from a first higher level program language to a second higher level program language, compiling said routine from said second higher level language into said particular machine language, and activating said apparatus to execute said particular machine language routine, said first higher level language implying a general algorithm characteristic of said first program language and said second higher level language being COBOL, said method comprising: receiving a first plurality of sets of signals representing a routine in said first language; generating, each time, in response to the receipt of said received first plurality of sets of signals, a second plurality of sets of signals including sets of signals representing said general algorithm as required by said first plurality of sets of signals; receiving said second plurality of sets of signals and generating, in response thereto, a third plurality of sets of signals representing said routine in said particular machine language code; and executing said routine in response to said third plurality of sets of signals in said apparatus.
Claim 12
Dependent Claim 187 words
In a data processing apparatus responsive to its particular machine language, the method for the translation of a routine from a first higher level program language to a second higher level program language, compiling said routine from said second higher level language into said particular machine language, and activating said apparatus to execute said particular machine language routine, said first higher level language implying a general algorithm characteristic of said first program language and said second higher level language being COBOL, said method comprising: receiving a first plurality of sets of signals representing a routine in said first language; generating, each time, in response to the receipt of said received first plurality of sets of signals, a second plurality of sets of signals including sets of signals representing said general algorithm as required by said first plurality of sets of signals; receiving said second plurality of sets of signals and generating, in response thereto, a third plurality of sets of signals representing said routine in said particular machine language code; and executing said routine in response to said third plurality of sets of signals in said apparatus.
Claim 13
Dependent Claim 34 words
A method according to claim 9 including: sensing said received sets of said first plurality of sets of signals for comparison against acceptable sequences of such sets representing a program free of syntax error.
Claim 14
Dependent Claim 22 words
A method according to claim 10 including: printing out a warning message should said received sets of signals contain a syntax error.
Claim 15
Dependent Claim 193 words
In a data processing apparatus responsive to its particular machine language, the method for the translation of a routine from a first higher level program language to a second higher level program language and compiling said routine from said second higher level language into said particular machine language where said first language is RPG and said second language is COBOL, said method comprising: receiving a first plurality of sets of signals representing a program in a first program source language; sensing at least some sets of said first plurality of sets of signals and generating each time a second plurality of sets of signals whose commands having direct correspondence to commands represented by said first plurality of sets of signals; again sensing said sets of said first plurality of sets of signals and generating in said second plurality of sets of signals those commands required by the first plurality of sets of signals but not generated during the preceding step of the method; and receiving said second plurality of sets of signals and generating, in response thereto, a third plurality of sets of signals representing said routine in said particular machine language code.
Claim 16
Dependent Claim 193 words
In a data processing apparatus responsive to its particular machine language, the method for the translation of a routine from a first higher level program language to a second higher level program language and compiling said routine from said second higher level language into said particular machine language where said first language is RPG and said second language is COBOL, said method comprising: receiving a first plurality of sets of signals representing a program in a first program source language; sensing at least some sets of said first plurality of sets of signals and generating each time a second plurality of sets of signals whose commands having direct correspondence to commands represented by said first plurality of sets of signals; again sensing said sets of said first plurality of sets of signals and generating in said second plurality of sets of signals those commands required by the first plurality of sets of signals but not generated during the preceding step of the method; and receiving said second plurality of sets of signals and generating, in response thereto, a third plurality of sets of signals representing said routine in said particular machine language code.
Claim 17
Dependent Claim 64 words
A method according to claim 12 wherein said first source language code implements a general algorithm characteristic of such first source code, said method including: generating in response to the receipt of said first plurality of sets of signals, a second plurality of sets of signals including sets of signals representing said general algorithm as required by said first plurality of sets of signals.
Claim 18
Dependent Claim 40 words
A method according to claim 12 including: generating sets of signals, for said second plurality of sets of signals, representing definitions of data fields and files called for by the program represented by said first plurality of sets of signals.
Claim 19
Dependent Claim 34 words
A method according to claim 12 including: sensing said received sets of said first plurality of sets of signals for comparison against acceptable sequences of such sets representing a program free of syntax error.
Claim 20
Dependent Claim 22 words
A method according to claim 15 including: printing out a warning message should said received sets of signals contain a syntax error.
Claim 21
Dependent Claim 185 words
In a data processing apparatus responsive to a particular machine language, the method for the translation of a routine from a first higher level program language to a second higher level program language and compiling said routine from said second higher level language into said particular machine language, said method comprising: receiving a first plurality of sets of signals representing a program in a first program source language; sensing at least some sets of said first plurality of sets of signals and generating each time a second plurality of sets of signals whose commands having direct correspondence to commands represented by said first plurality of sets of signals and generating, for intermediate storage, data information for other commands; again sensing said sets of said first plurality of sets of signals and generating in said second plurality of sets of signals those commands for which intermediate information was generated during the preceding step of the method; and receiving said second plurality of sets of signals and generating, in response thereto, a third plurality of sets of signals representing said routine in said particular machine language code.
Claim 22
Dependent Claim 185 words
In a data processing apparatus responsive to a particular machine language, the method for the translation of a routine from a first higher level program language to a second higher level program language and compiling said routine from said second higher level language into said particular machine language, said method comprising: receiving a first plurality of sets of signals representing a program in a first program source language; sensing at least some sets of said first plurality of sets of signals and generating each time a second plurality of sets of signals whose commands having direct correspondence to commands represented by said first plurality of sets of signals and generating, for intermediate storage, data information for other commands; again sensing said sets of said first plurality of sets of signals and generating in said second plurality of sets of signals those commands for which intermediate information was generated during the preceding step of the method; and receiving said second plurality of sets of signals and generating, in response thereto, a third plurality of sets of signals representing said routine in said particular machine language code.
Claim 23
Dependent Claim 36 words
A method according to claim 17 including: sensing in sequence, each of said sets of first plurality of sets of signals for comparison against acceptable sequences of such sets representing a program free of syntax error.
Claim 24
Dependent Claim 48 words
A method according to claim 18 wherein said system includes a storage unit for intermediate files, said method including: transferring to said storage unit, the data table definitions called for by said program and represented by particular sets of signals in said first plurality of sets of signals.

References Cited (Backward Citations)

No citation records indexed.

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 1986-02-14 1986-08-16 1987-02-15 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 1990-02-14 1990-08-16 1991-02-15 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 1994-02-14 1994-08-16 1995-02-15 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag