Programming interface for a computer platform
First Claim
1. A processor-accessible computer readable device comprising processor-executable instructions stored thereon that, when executed, direct a device to perform a method comprising:
- converting a plurality of programs into corresponding intermediate language programs, the plurality of programs being written in different programming languages but according to a common language specification;
exposing resources of an operating system or an object model service via application program interface (API) functions of a program interface layer to the plurality of intermediate language programs, the program interface layer to receive calls to the API functions from the plurality of intermediate language programs, wherein one of the API functions communicates in a first form and another of the API functions communicates in a second form that is incompatible with the first form;
providing a common language run time layer that hands calls to the API functions of the program interface layer by the plurality of intermediate language programs to the operation system or the object model server for execution;
creating a plurality of namespaces to organize the API functions of the program interface layer, the namespaces including a first namespace that includes API functions of the program interface layer that enable identification of particular physical locations, a second namespace that includes API functions of the program interface layer that are expected to be used by the first namespace; and
converting a communication associated with an API function of the program interface layer from the first form to the second form.
3 Assignments
0 Petitions
Accused Products
Abstract
A programming interface for a computer platform can include various functionality. In certain embodiments, the programming interface includes one or more of the following groups of types or functions: those related to core file system concepts, those related to entities that a human being can contact, those related to documents, those common to multiple kinds of media, those specific to audio media, those specific to video media, those specific to image media, those specific to electronic mail messages, and those related to identifying particular locations.
-
Citations
54 Claims
-
1. A processor-accessible computer readable device comprising processor-executable instructions stored thereon that, when executed, direct a device to perform a method comprising:
-
converting a plurality of programs into corresponding intermediate language programs, the plurality of programs being written in different programming languages but according to a common language specification; exposing resources of an operating system or an object model service via application program interface (API) functions of a program interface layer to the plurality of intermediate language programs, the program interface layer to receive calls to the API functions from the plurality of intermediate language programs, wherein one of the API functions communicates in a first form and another of the API functions communicates in a second form that is incompatible with the first form; providing a common language run time layer that hands calls to the API functions of the program interface layer by the plurality of intermediate language programs to the operation system or the object model server for execution; creating a plurality of namespaces to organize the API functions of the program interface layer, the namespaces including a first namespace that includes API functions of the program interface layer that enable identification of particular physical locations, a second namespace that includes API functions of the program interface layer that are expected to be used by the first namespace; and converting a communication associated with an API function of the program interface layer from the first form to the second form. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 54)
-
-
22. A system framework comprising:
-
an operating system having a plurality of resources; a common language runtime layer running on top of the operating system that enables at least one intermediate language application to access at least one resource of the operating system; an application programming interface layer running on top of the common language runtime layer, the application program interface layer including functions that enable the at least one intermediate language application to access the at least one resource of the operating system via the common language runtime layer, the functions include a first function that communicates in a first form and a second function that communicates in a second form that is incompatible with the first form, the functions being organized into sets according to a file system of the application programming interface layer, the sets of functions including; a first set of functions that represent core concepts of a file system of the system; a second set of functions that enable maintaining information regarding entities that can be contacted; and a third set of functions that allow document types to be accessed, wherein the application programming interface layer is to receive at least one call to one or more functions in at least one of the sets from the intermediate language application, and to convert a communication associated with one of the functions from the first form the second form. - View Dependent Claims (23, 24, 25, 26)
-
-
27. A method of organizing a set of application program interface (API) functions of an API layer in a program development computer system into a hierarchical namespace, the method comprising:
-
creating a plurality of groups in a file system that resides on a server of the program development computer system for the set of API functions according to type, each group containing logically related API functions of the application program interface;
wherein one of the API functions communicates in first form and another of the API functions communicates in a second form that is incompatible with the first form;assigning a name to each group using the program development computer system, wherein one of the groups includes at least one API function related to core concepts of the file system, wherein another of the groups includes at least one API function related to entities that a human being can contact, wherein another of the groups includes at least one API function related to document types that can be stored in the file system, and wherein another of the groups includes at least one API function related to multiple kinds of media; selecting a top level identifier and prefixing the name of each group with the top level identifier using the program development computer system so that the types in each group are referenced by a hierarchical name that includes the selected top level identifier prefixed to the name of the group containing the type;
converting a communication associated with an API function of the API layer from the first form to the second form. - View Dependent Claims (28, 29, 30, 31, 32)
-
-
33. A method for organizing functions in a program development computer system, the method comprising:
-
creating a first namespace in a file system that resides on a server of the program development computer system, the first namespace includes application program interface (API) functions of an API layer that enable identification of particular physical locations using the program development computer system, the API interface layer running on top of a common language runtime layer to receive API function calls from an intermediate language program;
the file system is included in a programming interface layer of the program development computer framework;creating a second namespace on the file system that includes API functions of the API layer that enable identification of entities that can be contacted by a human being using the program development computer system, one of the API functions in the API layer communicates in a first form and another of the API functions in the API layer communicates in a second form that is incompatible with the first form; and
converting a communication associated with an API function of the API layer from the first form to the second form. - View Dependent Claims (34, 35, 36, 37)
-
-
38. A computer readable device having stored thereon a plurality of instructions that, when executed by a processor, cause the processor to:
-
create a first namespace that includes application program interface (API) functions of the API layer that enable identification of particular physical locations, the API interface layer running on top of a common language runtime layer to receive API function calls from an intermediate language program; and create a second namespace that includes API functions of the API layer that are expected to be used by the first namespace and a plurality of additional namespaces, wherein the first namespace, the second namespace, and the plurality of additional namespaces are defined to organize a file system, the file system being included in a programming interface for developing programs, one of the API functions of the API layer communicating in a first form and another function communicating in a second form which is incompatible with the first form; and convert a communication associated with one of the API functions of the API layer and in the first form to the second form. - View Dependent Claims (39, 40, 41)
-
-
42. A method comprising:
-
calling one or more first application program interface (API) functions of an API layer that is running on top of a common language runtime layer that resides on a server of a program development computer system, the one or more first API functions enable documents to be described; calling one or more second API functions of the API layer that are core functions expected to be used by the one or more first functions as well as a plurality of additional functions and converting a communication associated with an API function of the API layer from a first form to a second form, wherein one of multiple API functions in the API layer communicates in the first form and another of the multiple API functions in the API layer communicates in the second form that is incompatible with the first form, and wherein the one or more first functions, the one or more second functions, and the plurality of additional functions are organize in a file system in the program development computer system, the file system being included in the API. - View Dependent Claims (43, 44, 45, 46)
-
-
47. A method, comprising:
-
receiving one or more calls to one or more first application program interface (API) functions of the API layer that is running on top of a common language runtime layer, the one or more first API functions enable identification of entities that can be contacted by a human being; receiving one or more calls to one or more second API functions of the API layer that are core functions expected to be used by the one or more first API functions of the API layer as well as a plurality of additional API functions of the API layer using the program development computer system and converting a communication associated with an API function of the API layer from a first form to a second form, wherein one of multiple API functions in the API layer communicates in the first form and another of the multiple API functions in the API layer communicates in the second form that is incompatible with the first form and wherein the one or more first API functions of the API layer, the one or more second API functions of the API layer, and the plurality of additional API functions of the API layer are defined to organize a file system in a server of the program development computer system, the file system being included in a programming interface. - View Dependent Claims (48, 49)
-
-
50. A computer readable device having stored thereon a plurality of instructions that, when executed by a processor, cause the processor to:
-
receive one or more calls to one or more first application program interface (API) functions of the API layer that enable identification of entities that can be contacted by a human being, the API layer running on top of a common language runtime layer; and receive one or more calls to one or more second API functions of the API layer common to multiple kinds of media, wherein the one or more first API functions of the API layer and the one or more second API functions of the API layer are defined to organize a file system, the file system being included in a programming interface for programming programs, one of the API functions of the API layer communicating in a first form and another function communicating in a second form which is incompatible with the first form; and convert a communication associated with one of the API functions of the API layer and in the first form to the second form. - View Dependent Claims (51, 52, 53)
-
Specification