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

Method for extending a fourth generation programming language

Assignee: Hewlett Packard Enterprise Development LP
•
Filing: 1995-10-06
•
Granted: 1998-02-24
•
Expires: 2015-10-06
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A system for extending the capabilities of a programming language, particularly a 4GL, wherein an extension of the programming language is created as a class within the C++ programming language. The extension class must also include code to register the extension class with the programming language, so that the programming language execution engine can call the functions of the class. When the extension function receives control, it receives any parameters defined within the programming language statement that called the extension function, and it can return a value to the programming language. The extension function may call other functions of the programming language, and it may call any other types of functions, therefore, the extension function has complete control over its domain and scope.

Inventors

  • 👤 Greg Pasquariello

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-11-08 10:10
CPC Classifications
G; G06; G06F; G06F8/00; G06F8/70; G06F8/71

Claims Analysis

Total Claims: 13
Claim 1
Independent Claim 144 words
A method for extending the functionality of an existing programming language comprising the steps of: (a) defining an extension class to perform the extending of functionality, wherein the extension class has an extension class name and is derived from a predefined class within the existing programming language; (b) defining an execute member function within the extension class; (c) registering the extension class by calling a registration function inherited from the predefined class; and (d) within the existing programming language, performing the extension class, comprising the steps of (d1) recognizing that a programming language statement contains a function call to a function not defined within the programming language, the function having a function name, (d2) locating the function name within a list of registered functions, wherein the function name defines the extension class name, and (d3) calling the execute member function defined in step (b).
Claim 2
Independent Claim 144 words
A method for extending the functionality of an existing programming language comprising the steps of: (a) defining an extension class to perform the extending of functionality, wherein the extension class has an extension class name and is derived from a predefined class within the existing programming language; (b) defining an execute member function within the extension class; (c) registering the extension class by calling a registration function inherited from the predefined class; and (d) within the existing programming language, performing the extension class, comprising the steps of (d1) recognizing that a programming language statement contains a function call to a function not defined within the programming language, the function having a function name, (d2) locating the function name within a list of registered functions, wherein the function name defines the extension class name, and (d3) calling the execute member function defined in step (b).
Claim 3
Dependent Claim 35 words
The method of claim 1 wherein step (d3) further comprises the steps of: (d3a) placing function call parameters from the programming language statement on a stack; and (d3b) passing the stack to the extension class.
Claim 4
Dependent Claim 31 words
The method of claim 2 wherein step (b) further comprises the step of examining a number of parameters on the stack and discontinuing operation if the number of parameters is incorrect.
Claim 5
Dependent Claim 86 words
The method of claim 1 wherein step (b) further comprises the following steps (b1) and (b2) and wherein step (d3) further comprises the following steps (d3a) and (d3b): (b1) receiving a return indication parameter into the execute member function, wherein the return indication parameter indicates that a return value is expected; (b2) returning a return value when the return indication parameter indicates that a return value is expected; (d3a) creating the return indication parameter; and (d3b) passing the return indication parameter to the execute member function.
Claim 6
Dependent Claim 68 words
The method of claim 1 wherein step (b) further comprises the steps of: (b1) for each programming language function being called within the execute member function (b1a) locating the programming language function within the programming language, (b1b) creating a stack for the programming language function, (b1c) placing parameters for the programming language function on the stack, and (b1d) calling an execute member function of the programming language function.
Claim 7
Dependent Claim 17 words
The method of claim 1 wherein the registering of step (c) is performed outside the extension class.
Claim 8
Independent Claim 158 words
A method for extending the functionality of an existing programming language comprising the steps of: (a) defining an extension class to perform the extending of functionality, wherein the extension class has an extension class name and is derived from a predefined class within the existing programming language; (b) defining an execute member function within the extension class; (c) defining a call to a registration function within a function incorporated into the programming language, and registering the extension class by performing the call to the registration function; and (d) within the existing programming language, performing the extension class, comprising the steps of (d1) recognizing that a programming language statement contains a function call to a function not defined within the programming language, the function having a function name, (d2) locating the function name within a list of registered functions, wherein the function name defines the extension class name, and (d3) calling the execute member function defined in step (b).
Claim 9
Independent Claim 158 words
A method for extending the functionality of an existing programming language comprising the steps of: (a) defining an extension class to perform the extending of functionality, wherein the extension class has an extension class name and is derived from a predefined class within the existing programming language; (b) defining an execute member function within the extension class; (c) defining a call to a registration function within a function incorporated into the programming language, and registering the extension class by performing the call to the registration function; and (d) within the existing programming language, performing the extension class, comprising the steps of (d1) recognizing that a programming language statement contains a function call to a function not defined within the programming language, the function having a function name, (d2) locating the function name within a list of registered functions, wherein the function name defines the extension class name, and (d3) calling the execute member function defined in step (b).
Claim 10
Dependent Claim 35 words
The method of claim 7 wherein step (d3) further comprises the steps of: (d3a) placing function call parameters from the programming language statement on a stack; and (d3b) passing the stack to the extension class.
Claim 11
Dependent Claim 31 words
The method of claim 8 wherein step (b) further comprises the step of examining a number of parameters on the stack and discontinuing operation if the number of parameters is incorrect.
Claim 12
Dependent Claim 86 words
The method of claim 7 wherein step (b) further comprises the following steps (b1) and (b2) and wherein step (d3) further comprises the following steps (d3a) and (d3b): (b1) receiving a return indication parameter into the execute member function, wherein the return indication parameter indicates that a return value is expected; (b2) returning a return value when the return indication parameter indicates that a return value is expected; (d3a) creating the return indication parameter; and (d3b) passing the return indication parameter to the execute member function.
Claim 13
Dependent Claim 68 words
The method of claim 7 wherein step (b) further comprises the steps of: (b1) for each programming language function being called within the execute member function (b1a) locating the programming language function within the programming language, (b1b) creating a stack for the programming language function, (b1c) placing parameters for the programming language function on the stack, and (b1d) calling an execute member function of the programming language function.

References Cited (Backward Citations)

US5515536A Cited
US5497491A Cited

USPTO Annuity & Maintenance Windows

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

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag