IP Library Granted Patent US 6,961,932
Granted Patent B2
US 6,961,932 · App. 09/931,649 · Granted Nov 1, 2005

Semantics mapping between different object hierarchies

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 6,961,932
App. No.
09/931,649
Granted
Nov 1, 2005
Kind
B2
Abstract

To enhance portability of programming languages and compiled codes, methods and/or devices optionally compile a programming language code associated with one framework to a code associated with another framework and/or convert a code associated with one framework to a code associated with another framework. The aforementioned converters and/or methods include, but are not limited to, features for supporting framework differences in object hierarchy, exceptions, type characteristics, reflection transparency, and/or scoping.

Claims (45)

1. A method executing on a computer-readable medium comprising:

receiving an initial code associated with a bytecode framework, the bytecode framework having an object hierarchy; and

converting the initial code to a converted code that combines the object hierarchy of the bytecode framework with an object hierarchy of an intermediate language code framework.

2. The method of claim 1 wherein the converting produces a class that inherits from a class of the bytecode framework.

3. The method of claim 2 wherein the class of the bytecode framework comprises a superclass of the bytecode framework.

4. The method of claim 2 wherein the class of the bytecode framework comprises a superclass named java.lang.Object.

5. The method of claim 2 wherein the class of the intermediate language code framework comprises an array class.

6. The method of claim 2 wherein the class of the intermediate language code framework comprises an array class named System.Array.

7. The method of claim 1 wherein the converting includes creating a new class.

8. The method of claim 7 wherein the new class inherits from java.lang.Object and from System.Array.

9. A computer-readable medium storing computer-executable instructions to convert an initial code associated with a bytecode framework, the bytecode framework having an object hierarchy, to a converted code that combines the object hierarchy of the bytecode framework with an object hierarchy of an intermediate language code framework.

10. A method executing on a computer-readable medium comprising:

receiving an initial code associated with a bytecode framework, the bytecode framework having an exception hierarchy; and

converting the initial code to a converted code that combines the exception hierarchy of the bytecode framework with an exception hierarchy of an intermediate language code framework.

11. The method of claim 10 wherein the converting includes mapping exceptions.

12. A computer-readable medium storing computer-executable instructions to convert an initial code associated with a bytecode framework, the bytecode framework having an exception hierarchy, to a converted code that combines the exception hierarchy of the bytecode framework with an exception hierarchy of an intermediate language code framework.

13. A method executing on a computer-readable medium comprising:

receiving an initial code associated with a bytecode framework, the bytecode framework having an exception hierarchy; and

converting the initial code to a converted code that maps the exception hierarchy of the bytecode framework to an exception hierarchy of an intermediate language code framework.

14. The method of claim 13 wherein the converting includes combining exception hierarchies.

15. A computer-readable medium storing computer-executable instructions to convert an initial code associated with a bytecode framework, the bytecode framework having an exception hierarchy, to a converted code that maps the exception hierarchy of the bytecode framework with an exception hierarchy of an intermediate language code framework.

16. A method executing on a computer-readable medium comprising:

receiving an initial code associated with a bytecode framework, the bytecode framework having reflection transparency; and

converting the initial code to a converted code that supports the reflection transparency of the bytecode framework on an intermediate language code framework.

17. The method of claim 16 wherein the converting includes checking for methods associated with the reflection transparency of the bytecode framework.

18. The method of claim 16 wherein the converting includes rendering a stack entry transparent.

19. A computer-readable medium storing computer-executable instructions to convert an initial code associated with a bytecode framework, the bytecode framework having reflection transparency, to a converted code that supports the reflection transparency of the bytecode framework on an intermediate language code framework.

20. A method executing on a computer-readable medium comprising:

receiving an initial code associated with a bytecode framework, the bytecode framework having scoping, and

converting the initial code to a converted code that supports the scoping of the bytecode framework on an intermediate language code framework.

21. The method of claim 20 wherein the converting includes marking a package scope and a protected scope associated with the bytecode framework as a public scope on the intermediate language code framework.

22. The method of claim 20 wherein the converting includes marking a package scope associated with the bytecode framework as an assembly on the intermediate language code framework.

23. The method of claim 20 wherein the converting includes marking a protected scope associated with the bytecode framework as an assembly or a family on the intermediate language code framework.

24. The method of claim 20 wherein the converting includes marking, the marking selected from a member of the group consisting of marking a protected scope associated with the bytecode framework as an assembly or a family on the intermediate language code framework; marking a package scope associated with the bytecode framework as an assembly on the intermediate language code framework; marking a package scope and a protected scope associated with the bytecode framework as a public scope on the intermediate language code framework; and combinations thereof.

25. A computer-readable medium storing computer-executable instructions to convert an initial code associated with a bytecode framework, the bytecode framework having scoping to a converted code that supports the scoping of the bytecode framework on an intermediate language code framework.

26. A method executing on a computer-readable medium comprising;

receiving an initial code associated with a bytecode framework, the bytecode framework having type characteristics; and

converting the initial code to a converted code that supports the type characterisitics of the bytecode framework on an intermediate language code framework.

27. The method of claim 26 wherein the converting supports type characteristics of the bytecode framework related to casting between real and integer types on the intermediate language code framework.

28. The method of claim 26 wherein the converting supports type characteristics of the bytecode framework related to overflow and undefined types on the intermediate language code framework.

29. A computer-readable medium storing computer-executable instructions to convert an initial code associated with a bytecode framework, the bytecode framework having type characteristics, to a converted code that supports the type characteristics of the bytecode framework on an intermediate language code framework.

30. A method executing on a computer-readable medium comprising:

receiving an initial code associated with a bytecode framework, the bytecode framework having at least one member selected from the group consisting of object hierarchies, exception hierarchies, type characteristics, reflection transparencies, and scoping; and

converting the initial code to a converted code that supports at least one of the selected members on an intermediate language code framework.

31. A computer-readable medium storing computer-executable instructions to convert an initial code associated with a bytecode framework, the bytecode framework having at least one member selected from the group consisting of object hierarchies, exception hierarchies, type characteristics, reflection transparencies, and scoping, to a converted code that supports at least one of the selected members of the bytecode framework on an intermediate language code framework.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 9, 2014
From: MICROSOFT CORPORATION
To: MICROSOFT TECHNOLOGY LICENSING, LLC
Reel/Frame 034541/0001 →