← Back to Patent Explorer
US5606700A Expired / Lapsed US ⏱️ 0.0 years remaining

Computer program product and program storage device for object oriented programming platform

Assignee: International Business Machines Corp
•
Filing: 1995-06-07
•
Granted: 1997-02-25
•
Expires: 2015-06-07
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A system for allowing a first computer program in a first language to cooperatively process with a second object oriented computer program in another language is described. A generic send message function is interposed between the first and second computer programs to control the exchange of messages. In order to achieve this the generic send message function has access to a description of the classes in the second computer program. Having access to such a description allows the generic send message function to efficiently transfer messages between the different computer programs, and also provides the ability for the creation of new objects of classes spanning environmental boundaries. The description of the object includes data identifying the location of instance variable data for each object, a pointer to class description which includes data identifying the environment in which the class operates, a pointer to any parent class, a list of functions provided by each class, and data identifying the length of instance variable data for each object.

Inventors

  • 👤 Tefcros Anthias
  • 👤 Andrew M. West

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-10-25 22:18
CPC Classifications
G; G06; G06F; G06F8/00; G06F8/70; G06F8/76; G06F9/00; G06F9/06; G06F9/44; G06F9/448; G06F9/4488; G06F9/449

Claims Analysis

Total Claims: 26
Claim 1
Independent Claim 105 words
A program storage device readable by a machine, tangibly embodying a program of instructions executable by the machine to perform method steps for performing a target function by sending a message from a first computer program written in a first computer language to a target object of a target class in a second computer program written in a second computer language, said method steps comprising: locating a predetermined description of said target class; locating said target function from within said target class by reading said description; mapping said message into a format required by said second language; and sending said message to said target object.
Claim 2
Dependent Claim 105 words
A program storage device readable by a machine, tangibly embodying a program of instructions executable by the machine to perform method steps for performing a target function by sending a message from a first computer program written in a first computer language to a target object of a target class in a second computer program written in a second computer language, said method steps comprising: locating a predetermined description of said target class; locating said target function from within said target class by reading said description; mapping said message into a format required by said second language; and sending said message to said target object.
Claim 3
Dependent Claim 46 words
The program storage device of claim 1, said method steps further comprising the method steps of locating a predetermined object description for said target object and reading data identifying instance variables unique to said object and a pointer to a description of an instance variable's class.
Claim 4
Dependent Claim 20 words
The program storage device of claim 2, wherein said method steps are performed by a generic send message function means.
Claim 5
Dependent Claim 20 words
The program storage device of claim 1, wherein said method steps are performed by a generic send message function means.
Claim 6
Dependent Claim 38 words
The program storage device of claim 4, wherein said generic send message function means has access to a description of classes of a plurality of object oriented computer programs enabling sending messages to said plurality of computer programs.
Claim 7
Dependent Claim 41 words
The program storage device of claim 5, wherein said second computer program includes at least one child class and at least one parent class, and each description of a child class includes a pointer to a description of its parent class.
Claim 8
Dependent Claim 66 words
The program storage device of claim 6, wherein each description of a class includes a list of functions provided by that class, further comprising the steps of determining whether the target function is provided by said target class and if not provided, then reading said pointer to said parent class description and searching said target function in a corresponding list of functions of the parent class.
Claim 9
Dependent Claim 87 words
The program storage device of claim 7, wherein each description of objects includes data identifying length and location of instance variable data for objects within a given class of objects, such that when a new object is created length of instance variable data for that object is calculated based upon instance variable length for said new object's complete class hierarchy, storage for instance variables is allocated, and instance variable addresses are passed as a parameter in messages sent by said generic send message function to target objects.
Claim 10
Dependent Claim 29 words
The program storage device of claim 8, wherein each description of a class identifies said computer language of said class and a pointer to code for performing said mapping.
Claim 11
Dependent Claim 150 words
A computer program product for use in a computer system, said computer program product comprising: a computer readable medium having computer readable program code means embodied in said medium for causing a computer to perform a target function by sending a message from a first computer program written in a first computer language to a target object of a target class in a second computer program written in a second computer language, the computer system having a processor, said computer program readable program code means comprising: computer readable program code means for locating a predetermined description of said target class; computer readable program code means for locating said target function from within said target class by reading said description; computer readable program code means for mapping said message into a format required by said second language; and computer readable program code means for sending said message to said target object.
Claim 12
Dependent Claim 150 words
A computer program product for use in a computer system, said computer program product comprising: a computer readable medium having computer readable program code means embodied in said medium for causing a computer to perform a target function by sending a message from a first computer program written in a first computer language to a target object of a target class in a second computer program written in a second computer language, the computer system having a processor, said computer program readable program code means comprising: computer readable program code means for locating a predetermined description of said target class; computer readable program code means for locating said target function from within said target class by reading said description; computer readable program code means for mapping said message into a format required by said second language; and computer readable program code means for sending said message to said target object.
Claim 13
Dependent Claim 45 words
The computer program product of claim 10, further comprising computer readable program code means for locating a predetermined object description for said target object and reading data identifying instance variables unique to said object and a pointer to a description of an instance variable's class.
Claim 14
Dependent Claim 27 words
The computer program product of claim 11, wherein the computer readable program code means are performed by a generic send message function computer readable program code means.
Claim 15
Dependent Claim 26 words
The compute program product of claim 12, wherein the computer readable program code means performed by a generic send message function computer readable program code means.
Claim 16
Dependent Claim 42 words
The computer program product of claim 13, wherein the generic send message function computer readable program code means has access to a description of classes of a plurality of object oriented computer programs enabling sending messages to said plurality of computer programs.
Claim 17
Dependent Claim 41 words
The computer program product of claim 14, wherein said second computer program includes at least one child class and at least one parent class, and each description of a child class includes a pointer to a description of its parent class.
Claim 18
Dependent Claim 69 words
The computer program product of claim 15, wherein each description of a class includes a list of functions provided by that class, further comprising computer readable program code means for determining whether the target function is provided by said target class and if not provided, then reading said pointer to said parent class description and searching said target function in a corresponding list of functions of the parent class.
Claim 19
Dependent Claim 89 words
The computer program product of claim 16, wherein each description of objects includes data identifying length and location of instance variable data for objects within a given class of objects, such that when a new object is created length of instance variable data for that object is calculated based upon instance variable length for said new object's complete class hierarchy, storage for instance variables is allocated, and instance variable addresses are passed as a parameter in messages sent by said generic send message function instruction means to target objects.
Claim 20
Dependent Claim 29 words
The computer program product of claim 17, wherein each description of a class identifies said computer language of said class and a pointer to code for performing said mapping.
Claim 21
Dependent Claim 177 words
A computer program product for uses in a computer system, said computer program product comprising: a computer usable medium having computer readable program code means embodied in said medium for causing a computer to pass messages between a first object oriented program, written in a first object oriented programming language, and a second object oriented program, written in a second object oriented programming language, said computer readable program code means comprising: computer readable program code means for causing said computer system to store a description of one or more classes in said second in said second object oriented program; computer readable program code means to implement a generic send message means having access to said description; and computer readable program code means for causing an object oriented computer program to send a message, adopting a first message protocol corresponding to said first object oriented programming language, to said second object oriented program by accessing said generic send message means, wherein said message is mapped to a second message protocol, corresponding to said second object oriented programming language.
Claim 22
Dependent Claim 177 words
A computer program product for uses in a computer system, said computer program product comprising: a computer usable medium having computer readable program code means embodied in said medium for causing a computer to pass messages between a first object oriented program, written in a first object oriented programming language, and a second object oriented program, written in a second object oriented programming language, said computer readable program code means comprising: computer readable program code means for causing said computer system to store a description of one or more classes in said second in said second object oriented program; computer readable program code means to implement a generic send message means having access to said description; and computer readable program code means for causing an object oriented computer program to send a message, adopting a first message protocol corresponding to said first object oriented programming language, to said second object oriented program by accessing said generic send message means, wherein said message is mapped to a second message protocol, corresponding to said second object oriented programming language.
Claim 23
Dependent Claim 50 words
The computer program product of claim 19, wherein said second object oriented computer program further has an object description for one or more objects, said object description further has data identifying one or more instance variables unique to said one or more objects and a pointer to said class description.
Claim 24
Dependent Claim 57 words
The computer program product of claim 20, wherein said second object oriented computer program further has one or more child classes and one or more parent classes, wherein each description of a child class includes a pointer to a description of its parent class, and each said child class locates its parent class by reading said pointer.
Claim 25
Dependent Claim 77 words
The computer program product of claim 19, wherein said description of one or more classes further comprises a list of functions provided by that class such that if a message requests a function not provided by a child class, said pointer to said description of said parent class of said child class is read and said function is searched for in a corresponding list of functions in said description of said parent class of said child class.
Claim 26
Dependent Claim 71 words
The computer program product of claim 19, wherein said class description further comprises data identifying length and location of instance variable data for said objects, such that when a new object is created, storage required for instance variable data for said new object is calculated based upon instance variable length for said new object's complete hierarchy, storage for said instance variables is allocated, and addresses of said instance variables are stored.

References Cited (Backward Citations)

US4943932A Cited
US5095522A Cited
US5067072A Cited
US5187787A Cited
US5187787B1 Cited
US5247650A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 2000-02-25 2000-08-26 2001-02-25 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2004-02-25 2004-08-26 2005-02-25 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2008-02-25 2008-08-26 2009-02-25 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag