Compiler merging new and preexisting modules while preserving function order
First Claim
Patent Images
1. A system for compiling versions of a file in a first and second programming language into a merged output file in the a second language in a computer system comprising:
- means for modifying an original file in the first programming language to create a derivative file in the first programming language;
means for translating the original and derivative files in the first language into original and derivative output files in the second language in a computer memory;
means for modifying and storing the original output file in the second language in the computer memory according to user input to create a modified original output. file,; and
means for interleaving code segments from the modified original and derivative output files and storing the interleaved code segments as the merged output file in the computer memory so that code segments from each of the modified original and derivative output files which correspond to each function name are stored together.
0 Assignments
0 Petitions
Accused Products
Abstract
A compiler which merges two output files into a third output file. First, the compiler generates a new output file by compiling an input file. Next, the compiler searches for an existing output file for a substantially similar purpose as the new output file, i.e. the preexisting implementation file. The code modules from the new and existing output files are then interleaved to preserve the sequence of related code modules.
28 Citations
14 Claims
-
1. A system for compiling versions of a file in a first and second programming language into a merged output file in the a second language in a computer system comprising:
-
means for modifying an original file in the first programming language to create a derivative file in the first programming language; means for translating the original and derivative files in the first language into original and derivative output files in the second language in a computer memory; means for modifying and storing the original output file in the second language in the computer memory according to user input to create a modified original output. file,; and means for interleaving code segments from the modified original and derivative output files and storing the interleaved code segments as the merged output file in the computer memory so that code segments from each of the modified original and derivative output files which correspond to each function name are stored together. - View Dependent Claims (2, 3)
-
-
4. A method for compiling two versions of a file in a first and second programming language into a merged output file in the second language comprising the steps of:
-
translating an original input file in the first language into an original output file in the second language in a computer memory; modifying and storing the original output file in the second language in the computer memory according to user supplied input to create a modified original output file; translating a derivative input file in the first programming language into a derivative output file in the second programming language, the derivative input file another version of the original input file; and interleaving code segments from the modified original and derivative output files and storing the code segments from each of the modified original and derivative output files so that code segments which correspond to each function name are stored together. - View Dependent Claims (5, 6)
-
-
7. A method for compiling an updated file in a first programming language into a new file in a second programming language, the method including a merge of two translated files in the second programming language, a newly translated file resulting from translation of the updated file and a previously translated file resulting from translation of a prior version of the updated file, the previously translated file modified in its translated form by a user, the method practiced in a memory of a computer system, comprising the steps of:
-
translating the updated file to create the newly translated file; retreiving from the memory the previously translated file; responsive to the creation of the newly translated file, searching the newly and previously translated files to create a list of function names ordered as they occur in the newly translated file marking common module names which occur in both the newly and previously translated files; sequentially comparing function names in an order in which the function names occur in the previously translated file to the list; for each function name in the previously translated file, storing in the new file a corresponding code segment from the previously translated file; for each function name in both the previously translated file and the list, storing in the new file corresponding code segment unique to the newly and previously translated files; for each function name unique to the list, storing in the new file a corresponding code segments from the newly translated file.
-
-
8. A method for compiling an updated file in a first programming language into a new file in a second programming language, the method including a merge of two translated files in the second programming language, a newly translated file resulting from translation of the updated file and a previously translated file resulting from translation of a prior version of the updated file, the previously translated file modified in its translated form in response to user input, the method practiced in a memory of a computer system, comprising the steps of:
-
sequentially comparing function names as the function names occur in the newly and previously translated files; for each function name as ordered in the previously translated file, storing in the new file a corresponding code segment from the previously translated file; for each function name as ordered in the previously translated file also present in the newly translated file, storing in the new file corresponding code segments unique to the newly and previously translated files; for each function name unique to the newly translated file, storing in the new file a corresponding code segment from the newly translated file. - View Dependent Claims (9, 10, 11, 12)
-
-
13. A computer system for compiling an updated file in a first programming language into a new file in a second programming language wherein two translated files in the second programming language are merged, a newly translated file resulting from translation of the updated file and a previously translated file resulting from translation of a prior version of the updated file, the previously translated file modified in its translated form in response to user input, the method practiced in a memory of a computer system, comprising the steps of:
-
means for translating the updated file to create the newly translated file; means for searching newly and previously translated files to create a list of function names ordered as the function names occur in the newly translated file marking common function names which occur in both the newly and previously translated files; means for sequentially comparing function names in an order in which the function names occur in the previously translated file to an order in which the function names occur in the list; for each function name in the previously translated file, means for storing in the new file a corresponding code segment from the previously translated file; for each module name in both the previously translated file and list, means for storing in the new file corresponding code segments unique to the newly and previously translated files; for each function name unique to the list, means for storing in the new file a corresponding code segment from the newly translated file.
-
-
14. A computer memory readable by a processor and tangibly embodying a program of instructions executable by the processor to perform a method the method for compiling an updated file in a first programming language into a new file in a second programming language the method including a merge of two translated files in the second programming language, a newly translated file resulting from translation of the updated file with a previously translated file resulting from translation of a prior version of the updated file, the previously translated file modified in its translated form in response to user input, the method comprising the steps of:
-
sequentially comparing function names as the function names occur in the newly and previously translated files; for each function name as ordered in the previously translated file, storing in the new file a corresponding code segment from the previously translated file; for each function name as ordered in the previously translated file also present in the newly translated file, storing in the new file portions of corresponding code segments unique to the newly and previously translated files; for each function mane unique to the newly translated file, storing in the new file a corresponding code segment from the newly translated file.
-
Specification