LANGUAGE-BASED MODEL FOR ASYNCHRONOUS OPERATIONS
First Claim
1. A method for providing asynchronous operations with comprising:
- defining a runtime environment including a syntax for synchronous operations in a language-based model;
defining the runtime environment to include asynchronous operations in the language-based model through programming in the syntax for synchronous operations with at least one keyword defining the asynchronous operations; and
compiling in the runtime environment the asynchronous operations programmed in the syntax for synchronous operations along with the at least one keyword into an asynchronous operation configured for the runtime environment.
3 Assignments
0 Petitions
Accused Products
Abstract
A language-based model to support asynchronous operations set forth in a synchronous syntax is provided. The asynchronous operations are transformed in a compiler into an asynchronous pattern, such as an APM-based pattern (or asynchronous programming model based pattern). The ability to compose asynchronous operations comes from the ability to efficiently call asynchronous methods from other asynchronous methods, pause them and later resume them, and effectively implementing a single-linked stack. One example includes support for ordered and unordered compositions of asynchronous operations. In an ordered composition, each asynchronous operation is started and finished before another operation in the composition is started. In an unordered composition, each asynchronous operation is started and completed independently of the operations in the unordered composition.
-
Citations
20 Claims
-
1. A method for providing asynchronous operations with comprising:
-
defining a runtime environment including a syntax for synchronous operations in a language-based model; defining the runtime environment to include asynchronous operations in the language-based model through programming in the syntax for synchronous operations with at least one keyword defining the asynchronous operations; and compiling in the runtime environment the asynchronous operations programmed in the syntax for synchronous operations along with the at least one keyword into an asynchronous operation configured for the runtime environment. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15)
-
-
16. A computer readable storage medium storing computer executable instructions for controlling a computing device to perform a method comprising:
-
defining a runtime environment including a syntax for synchronous operations and asynchronous operations, wherein the asynchronous operations are specifically defined in the syntax with a keyword and are otherwise programmed in the syntax for synchronous operation; providing support for ordered compositions, wherein the ordered compositions include a first set of at least two asynchronous operations wherein calls to the first set of operations are serialized so that each operation is completed for a current call before a next call is performed; and providing support for unordered compositions, wherein the unordered compositions include a second set of at least two asynchronous operations wherein each of the unordered compositions start and continue independently of the other asynchronous operations in the second set. - View Dependent Claims (17, 18, 19)
-
-
20. A computer readable storage medium storing computer executable instructions for controlling a computing device to perform a method comprising:
-
defining a runtime environment including a syntax for synchronous operations in a language-based model; defining the runtime environment to include asynchronous operations in the language-based model through programming in the syntax for synchronous operations with at least one keyword defining the asynchronous operations; providing support for ordered compositions, wherein the ordered compositions include a first set of at least two asynchronous operations wherein calls to the first set of operations are serialized so that each operation is completed for a current call before a next call is performed; and providing support for unordered compositions, wherein the unordered compositions include a second set of at least two asynchronous operations wherein each of the unordered compositions start and continue independently of the other asynchronous operations in the second set; and compiling in the runtime environment the asynchronous operations programmed in the syntax for synchronous operations along with the at least one keyword and the construct into an asynchronous operation with pattern-matching identification configured for the runtime environment.
-
Specification