Methods, systems, and computer program products for enabling cross language access to an addressable entity in an execution environment
First Claim
1. A method for enabling cross language access to an addressable entity in an execution environment, the method comprising:
- Detecting an unresolved reference entity in a first object code generated from first source code written in a first programming language, wherein a portion of the first object code using the unresolved reference entity is generated by a compiler of the first source code using an execution model associated with an addressable entity referenced by the unresolved reference entity;
locating an addressable entity in a second object code generated from second source code written in a second programming language, wherein the located addressable entity has an associated alias symbol from a namespace of the first programming language;
determining whether the located addressable entity is the referenced addressable entity by matching a symbol associated with the unresolved reference entity with the alias symbol associated with the located addressable entity; and
in response to determining that the symbol associated with the unresolved reference entity matches the alias symbol;
resolving the unresolved reference entity to the located addressable entity using an identifier, wherein the identifier is associated with a storage area associated with the located addressable entity and wherein the located addressable entity is generated by a compiler of the second source code and conforms to the execution model used by the compiler of the first source code to generate the portion of the first object code using the referenced addressable entity andallowing the portion of the first object code using the resolved reference entity to access the located addressable entity via the storage area associated with the identifier as a result of the use of the shared execution model by the compilers of the first and second source code.
2 Assignments
0 Petitions
Accused Products
Abstract
Methods, systems, and computer program products for enabling cross language access of an addressable entity in an execution environment are disclosed. According to one method, an unresolved reference entity is detected in a first object code generated from first source code written in a first programming language, where a portion of the first object code using the unresolved reference entity is generated by a compiler of the first source code using an execution model associated with an addressable entity referenced by the unresolved reference entity. An addressable entity is located in a second object code generated from second source code written in a second programming language, where the located addressable entity has an associated alias symbol from a namespace of the first programming language. It is determined whether the located addressable entity is the referenced addressable entity by matching a symbol associated with the unresolved reference entity with the alias symbol associated with the located addressable entity. In response to determining that the symbol associated with the unresolved reference entity matches the alias symbol, the unresolved reference entity is resolved to the located addressable entity using an identifier, wherein the identifier is associated with a storage area associated with the located addressable entity and wherein the located addressable entity is generated by a compiler of the second source code and conforms to the execution model used by the compiler of the first source code to generate the portion of the first object code using the referenced addressable entity. The portion of the first object code using the resolved reference entity is allowed to access the located addressable entity via the storage area associated with the identifier as a result of the use of the shared execution model by the compilers of the first and second source code.
121 Citations
20 Claims
-
1. A method for enabling cross language access to an addressable entity in an execution environment, the method comprising:
-
Detecting an unresolved reference entity in a first object code generated from first source code written in a first programming language, wherein a portion of the first object code using the unresolved reference entity is generated by a compiler of the first source code using an execution model associated with an addressable entity referenced by the unresolved reference entity; locating an addressable entity in a second object code generated from second source code written in a second programming language, wherein the located addressable entity has an associated alias symbol from a namespace of the first programming language; determining whether the located addressable entity is the referenced addressable entity by matching a symbol associated with the unresolved reference entity with the alias symbol associated with the located addressable entity; and in response to determining that the symbol associated with the unresolved reference entity matches the alias symbol; resolving the unresolved reference entity to the located addressable entity using an identifier, wherein the identifier is associated with a storage area associated with the located addressable entity and wherein the located addressable entity is generated by a compiler of the second source code and conforms to the execution model used by the compiler of the first source code to generate the portion of the first object code using the referenced addressable entity and allowing the portion of the first object code using the resolved reference entity to access the located addressable entity via the storage area associated with the identifier as a result of the use of the shared execution model by the compilers of the first and second source code. - View Dependent Claims (2, 3, 4)
-
-
5. A method for enabling cross language access to an addressable entity in an execution environment, the method comprising:
-
detecting an unresolved reference entity in a first object code generated from first source code written in a first programming language, wherein a portion of the first object code using the unresolved reference entity is generated by a compiler of the first source code using an execution model associated with an addressable entity referenced by the unresolved reference entity and the unresolved reference entity has an associated alias symbol from a namespace of a second programming language; locating an addressable entity in a second object code generated from second source code written in the second programming language; determining whether the located addressable entity is the referenced addressable entity by matching the alias symbol associated with the unresolved reference entity with a symbol associated with the located addressable entity; and in response to determining that the symbol associated with the addressable entity matches the alias symbol; resolving the unresolved reference entity to the located addressable entity using an identifier, wherein the identifier is associated with a storage area associated with the located addressable entity and wherein the located addressable entity is generated by a compiler of the second source code and conforms to the execution model used by the compiler of the first source code to generate the portion of the first object code using the referenced addressable entity; and allowing the portion of the first object code using the resolved reference entity to access the located addressable entity via the storage area associated with the Identifier as a result of the use of the shared execution model by the compilers of the first and second source code. - View Dependent Claims (6, 7, 8)
-
-
9. A system for enabling cross language access to an addressable entity in an execution environment, the system comprising:
-
an execution environment configured for detecting an unresolved reference entity in a first object code generated from first source code written in a first programming language, wherein a portion of the first object code using the unresolved reference entity conforms to an execution model used by a compiler of the first source code using an execution model associated with a referenced addressable entity; locating an addressable entity in a second object code generated from second source code written in a second programming language, wherein the located addressable entity has an associated alias symbol from a namespace of the first programming language; determining whether the located addressable entity is the referenced addressable entity by matching a symbol associated with the unresolved reference entity with the alias symbol associated with the located addressable entity; and in response to determining that the symbol associated with the unresolved reference entity matches the alias symbol; resolving the unresolved reference entity to the located addressable entity using an identifier, wherein the identifier is associated with a storage area associated with the located addressable entity and wherein the located addressable entity is generated by a compiler of the second source code and conforms to the execution model used by the compiler of the first source code to generate the portion of the first object code using the referenced addressable entity; and allowing the portion of the first object code using the resolved reference entity to access the located addressable entity via the storage area associated with the identifier as a result of the use of the shared execution model by the compilers of the first and second source code. - View Dependent Claims (10, 11, 12)
-
-
13. A system for enabling cross language access to an addressable entity in an execution environment, the system comprising:
-
an execution environment configured for; detecting an unresolved reference entity in a first object code generated from first source code written in a first programming language, wherein a portion of the first object code using the unresolved reference entity is generated by a compiler of the first source code using an execution model associated with an addressable entity referenced by the unresolved reference entity and the unresolved reference entity has an associated alias symbol from a namespace of a second programming language; locating an addressable entity in a second object code generated from second source code written in the second programming language; determining whether the located addressable entity is the referenced addressable entity by matching the alias symbol associated with the unresolved reference entity with a symbol associated with the located addressable entity; in response to determining that the symbol associated with the addressable entity matches the alias symbol; resolving the unresolved reference entity to the located addressable entity using an identifier, wherein the identifier is associated with a storage area associated with the located addressable entity and wherein the located addressable entity is generated by a compiler of the second source code and conforms to the execution model used by the compiler of the first source code to generate the portion of the first object code using the referenced addressable entity; and allowing the portion of the first object code using the resolved reference entity to access the located addressable entity via the storage area associated with the identifier as a result of the use of the shared execution model by the compilers of the first and second source code. - View Dependent Claims (14, 15, 16)
-
-
17. A system for enabling cross language access to an addressable entity in an execution environment, the system comprising:
-
an execution environment including; means for detecting an unresolved reference entity in a first object code generated from first source code written in a first programming language, wherein a portion of the first object code using the unresolved reference entity is generated by a compiler of the first source code using an execution model associated with an addressable entity referenced by the unresolved reference entity; means for locating a symbol associated with an addressable entity in a second object code generated from second source code written in a second programming language, wherein the located addressable entity has an associated alias symbol from a namespace of the first programming language; means for determining whether the located addressable entity is the referenced addressable entity by matching a symbol associated with the unresolved reference entity with the alias symbol associated with the located addressable entity; and means for, in response to determining that the symbol associated with the unresolved reference entity matches the alias symbol; resolving the unresolved reference entity to the located addressable entity using an identifier, wherein the identifier is associated with a storage area associated with the located addressable entity is generated by a complier of the second source code and conforms to the execution model used by the compiler of the first source code to generate the portion of the first object code using the referenced addressable entity; and allowing the portion of the first object code using the resolved reference entity to access the located addressable entity via the storage area associated with the identifier as a result of the use of the shared execution model by the compilers of the first and second source code.
-
-
18. A system for enabling cross language access to an addressable entity in an execution environment, the system comprising:
-
an execution environment including; means for detecting an unresolved reference entity in a first object code generated from first source code written in a first programming language, wherein a portion of the first object code using the unresolved reference entity is generated by a compiler of the first source code using an execution model associated with an addressable entity referenced by the unresolved reference entity and the unresolved reference entity has an associated alias symbol from a namespace of a second programming language; means for locating an addressable entity in a second object code generated from second source code written in the second programming language; means for determining whether the located addressable entity is the referenced addressable entity by matching the alias symbol associated with the unresolved reference entity with a symbol associated with the located addressable entity; and means for, in response to determining that the symbol matches the alias symbol; resolving the unresolved reference to the located addressable entity using an identifier, wherein the identifier is associated with a storage area associated with the located addressable entity is generated by a complier of the second source code and conforms to the execution model used by the compiler of the first source code to generate the portion of the first object code using the referenced addressable entity; and allowing the portion of the first object code using the resolved reference entity to access the located addressable entity via the storage area associated with the identifier as a result of the use of the shared execution model by the compilers of the first and second source code.
-
-
19. A computer program product comprising computer instructions embodied in a computer readable medium for performing steps comprising:
-
detecting an unresolved reference entity in a first object code generated from first source code written in a first programming language, wherein a portion of the first object code using the unresolved reference entity is generated by a compiler of the first source code using an execution model associated with an addressable entity referenced by the unresolved reference entity; locating a an addressable entity in a second object code generated from second source code written in a second programming language, wherein the located addressable entity has an associated alias symbol from a namespace of the first programming language; determining whether the located addressable entity is the referenced addressable entity by matching a symbol associated with the unresolved reference entity with the alias symbol associated with the located addressable entity; and in response to determining that the symbol associated with the unresolved reference entity matches the alias symbol; resolving the unresolved reference entity to the located addressable entity using an identifier, wherein the identifier is associated with a storage area associated with the located addressable entity and wherein the located addressable entity is generated by a compiler of the second source code and conforms to the execution model used by the compiler of the first source code to generate the portion of the object code using the referenced addressable entity; and allowing the portion of the first object code using the resolved reference entity to access the located addressable entity via the storage area associated with the identifier as a result of the use of the shared execution model by the compilers of the first and second source code.
-
-
20. A computer program product comprising computer instructions embodied in a computer readable medium for performing steps comprising:
-
detecting an unresolved reference entity in a first object code generated from first source code written in a first programming language, wherein a portion of the first object code using the unresolved reference entity is generated by a compiler of the first source code using an execution model associated with an addressable entity referenced by the unresolved reference entity and the unresolved reference entity has an associated alias symbol from a namespace of a second programming language; locating an addressable entity in a second object code generated from second source code written in the second programming language; determining whether the located addressable entity is the referenced addressable entity by matching the alias symbol associated with the unresolved reference with a symbol associated with the located addressable entity; and in response to determining that the symbol associated with the addressable entity matches the alias symbol; resolving the unresolved reference entity to the located addressable entity using an identifier, wherein the identifier is associated with a storage area associated with the located addressable entity and wherein the located addressable entity is generated by a compiler of the second source code and conforms to the execution model used by the compiler of the first source code to generate the portion of the object code using the referenced addressable entity; and allowing the portion of the first object code using the resolved reference entity to access the located addressable entity via the storage area associated with the identifier as a result of the use of the shared execution model by the compilers of the first and second source code.
-
Specification