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

Method and apparatus for strategic compilation of source programs into two or more target languages

Assignee: International Business Machines Corp
•
Filing: 1998-03-10
•
Granted: 2001-09-04
•
Expires: 2018-03-10
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A method and apparatus which, as part of a compiler, supporting the generation of code in two (or more) target languages. The selection of the target language, and the program structure in that target language, is made depending on the capabilities of each target language, in a separate processing pass. Runtime efficiency is also improved by allowing selection of the most appropriate target language and program structure for a particular source code function.

Inventors

  • 👤 Trevor Paul Hopkins

Bibliographic Details

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

Claims Analysis

Total Claims: 6
Claim 1
Independent Claim 163 words
A method for compiling a source program written in a source language into a compiled program comprising a plurality of different target languages, the method comprising: generating a parse tree from a source program, the parse tree comprising a plurality of nodes each representative of an operation in the source program; determining, for each successive node of the parse tree, a target language selected from a plurality of different target languages into which the node can be compiled based on the operation represented by the node; generating, based on the target language determination, a list of start points each corresponding to a different node of the parse tree and each indicating the target language into which the node is to be compiled; and generating successive sections of the compiled program each based on each node of the parse tree between successive start points in the list and each being generated in the target language specified by the first of the successive start points.
Claim 2
Independent Claim 163 words
A method for compiling a source program written in a source language into a compiled program comprising a plurality of different target languages, the method comprising: generating a parse tree from a source program, the parse tree comprising a plurality of nodes each representative of an operation in the source program; determining, for each successive node of the parse tree, a target language selected from a plurality of different target languages into which the node can be compiled based on the operation represented by the node; generating, based on the target language determination, a list of start points each corresponding to a different node of the parse tree and each indicating the target language into which the node is to be compiled; and generating successive sections of the compiled program each based on each node of the parse tree between successive start points in the list and each being generated in the target language specified by the first of the successive start points.
Claim 3
Independent Claim 171 words
An apparatus for compiling a source program written in a source language into a compiled program comprising a plurality of different target languages, the apparatus comprising: means for generating a parse tree from a source program, the parse tree comprising a plurality of nodes each representative of an operation in the source program; means for determining, for each successive node of the parse tree, a target language selected from a plurality of different target languages into which the node can be compiled based on the operation represented by the node; means for generating, based on the target language determination, a list of start points each corresponding to a different node of the parse tree and each indicating the target language into which the node is to be compiled; and means for generating successive sections of the compiled program each based on each node of the parse tree between successive start points in the list and each being generated in the target language specified by the first of the successive start points.
Claim 4
Independent Claim 171 words
An apparatus for compiling a source program written in a source language into a compiled program comprising a plurality of different target languages, the apparatus comprising: means for generating a parse tree from a source program, the parse tree comprising a plurality of nodes each representative of an operation in the source program; means for determining, for each successive node of the parse tree, a target language selected from a plurality of different target languages into which the node can be compiled based on the operation represented by the node; means for generating, based on the target language determination, a list of start points each corresponding to a different node of the parse tree and each indicating the target language into which the node is to be compiled; and means for generating successive sections of the compiled program each based on each node of the parse tree between successive start points in the list and each being generated in the target language specified by the first of the successive start points.
Claim 5
Dependent Claim 184 words
A computer program device readable by a machine, tangibly embodying a program of instructions executable by a machine to perform method steps for compiling a source program written in a source language into a compiled program comprising a plurality of different languages, the method comprising steps of: generating a parse tree from a source program, the parse tree comprising a plurality of nodes each representative of an operation in the source program; determining, for each successive node of the parse tree, a target language selected from a plurality of different target languages into which the node can be compiled based on the operation represented by the node; generating, based on the target language determination, a list of start points each corresponding to a different node of the parse tree and each indicating the target language into which the node is to be compiled; and generating successive sections of the compiled program each based on each node of the parse tree between successive start points in the list and each being generated in the target language specified by the first of the successive start points.
Claim 6
Dependent Claim 184 words
A computer program device readable by a machine, tangibly embodying a program of instructions executable by a machine to perform method steps for compiling a source program written in a source language into a compiled program comprising a plurality of different languages, the method comprising steps of: generating a parse tree from a source program, the parse tree comprising a plurality of nodes each representative of an operation in the source program; determining, for each successive node of the parse tree, a target language selected from a plurality of different target languages into which the node can be compiled based on the operation represented by the node; generating, based on the target language determination, a list of start points each corresponding to a different node of the parse tree and each indicating the target language into which the node is to be compiled; and generating successive sections of the compiled program each based on each node of the parse tree between successive start points in the list and each being generated in the target language specified by the first of the successive start points.

References Cited (Backward Citations)

US5659753A Cited
US5598560A Cited
US5428792A Cited
US5561801A Cited
US5493680A Cited
US5822592A Cited
US5875331A Cited
US5842204A Cited
US5812851A Cited
US5732274A Cited
US5960200A Cited
US5898874A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 2004-09-03 2005-03-05 2005-09-04 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2008-09-03 2009-03-05 2009-09-04 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2012-09-03 2013-03-05 2013-09-04 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag