IP Library Granted Patent US 7,584,457
Granted Patent B2
US 7,584,457 · App. 10/676,825 · Granted Sep 1, 2009

Validating programs

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 7,584,457
App. No.
10/676,825
Granted
Sep 1, 2009
Kind
B2
Abstract

Methods and apparatus, including computer program products implement techniques for validating programs. A language-independent description of a computer program is received, and the language-independent description is validated. The language-independent description includes a definition module and an implementation module. A language-dependent program is generated from the language-independent description, where the language-dependent program includes an interface and a class, and the language-dependent program is validated.

Claims (29)

1. A method for validating programs, the method comprising steps implemented by one or more computers of:

receiving a meta-language description of a computer program, the meta-language description comprising a meta-language definition module and a meta-language implementation module, the meta-language implementation module defining a first class to be implemented by the computer program and the meta-language definition module defining a first interface associated with the class;

validating the meta-language description by validating syntax of the meta-language definition module and syntax of the meta-language implementation module;

generating a language-dependent program from the meta-language description, the language-dependent program comprising the first interface, the first class, and a script code section written in a scripting language;

performing usage and semantic checks on the computer program by compiling the generated first interface and the generated first class; and

performing usage checks on the generated script code section by extracting language elements from the generated script code section and comparing the extracted language elements with the meta-language definition module used to generate the language-dependent program.

2. The method according to claim 1 , further comprising:

generating a compiler language representation of the generated script code section, the compiler language representation of the generated script code section comprising a second interface and a second class.

3. The method according to claim 2 , further comprising:

performing usage and semantic checks on the generated script code section by compiling the compiler language representation of the generated script code section, including the generated second interface and the generated second class.

4. A computer program product, tangibly embodied in a computer-readable storage device, the computer program product comprising instructions operable to cause one or more computers to perform a method comprising:

receiving a meta-language description of a computer program, the meta-language description comprising a meta-language definition module and a meta-language implementation module, the meta-language implementation module defining a first class to be implemented by the computer program and the meta-language definition module defining a first interface associated with the class;

validating the meta-language description by validating syntax of the meta-language definition module and syntax of the meta-language implementation module;

generating a language-dependent program from the meta-language description, the language-dependent program comprising the first interface, the first class, and a script code section written in a scripting language;

performing usage and semantic checks on the computer program by compiling the generated first interface and the generated first class; and

performing usage checks on the generated script code section by extracting language elements from the generated script code section and comparing the extracted language elements with the meta-language definition module used to generate the language-dependent program.

5. The computer program product according to claim 4 , the method further comprising:

generating a compiler language representation of the generated script code section, the compiler language representation of the generated script code section comprising a second interface and a second class.

6. The method according to claim 5 , the method further comprising:

performing usage and semantic checks on the generated script code section by compiling the compiler language representation of the generated script code section, including the generated second interface and the generated second class.

7. An apparatus, comprising:

means for receiving a meta-language description of a computer program, the meta-language description comprising a meta-language definition module and a meta-language implementation module, the meta-language implementation module defining a first class to be implemented by the computer program and the meta-language definition module defining a first interface associated with the class;

means for validating the meta-language description by validating syntax of the meta-language definition module and syntax of the meta-language implementation module;

means for generating a language-dependent program from the meta-language description, the language-dependent program comprising the first interface, the first class, and a script code section written in a scripting language; and

means for performing usage and semantic checks on the computer program by compiling the generated first interface and the generated first class, and performing usage checks on the generated script code section by extracting language elements from the generated script code section and comparing the extracted language elements with the meta-language definition module used to generate the language-dependent program, and

a programmable processor for implementing at least the means for performing usage checks.

8. The apparatus according to claim 7 , further comprising:

means for generating a compiler language representation of the generated script code section, the compiler language representation of the generated script code section comprising a second interface and a second class.

9. The apparatus according to claim 8 , wherein the means for performing usage and semantic checks performs usage and semantic checks on the generated script code section by compiling the compiler language representation of the generated script code section, including the generated second interface and the generated second class.

Assignments (3)
CHANGE OF NAME Recorded Aug 26, 2014
From: SAP AG
To: SAP SE
Reel/Frame 033625/0334 →
CHANGE OF NAME Recorded Dec 21, 2005
From: SAP AKTIENGESELLSCHAFT
To: SAP AG
Reel/Frame 017364/0758 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 19, 2004
From: HAMMERICH, REINER; BAECHLE, WERNER; DENCKER, THORSTEN; FILDEBRANDT, ULF; DIETL, JOSEF
To: SAP AKTIENGESELLSCHAFT
Reel/Frame 014358/0289 →