Patent application number | Description | Published |
20080262992 | TYPE INFERENCE FOR OBJECT-ORIENTED LANGUAGES - Systems and methods facilitate type inference in a computer-programming environment. Type inference can be applied to generic method or function invocation in object-oriented languages to determine a type argument list left implicit by a programmer. One or more type arguments can be identified as a parameter type to which all other types in a set of associated parameter types can be converted. | 10-23-2008 |
20090112975 | PRE-FETCHING IN DISTRIBUTED COMPUTING ENVIRONMENTS - Client-side performance is optimized through server-side pushing of content. Portions of content are requested and retrieved as required by a client-side application. Moreover, content likely to be needed in the near future is pre-fetched and pushed to the client. This is beneficial from an overhead standpoint since all content need not be provided to the client at once. Rather, content provisioning is throttled based on need, and wait time is mitigated by pre-fetching. | 04-30-2009 |
20090199159 | DECLARATIVE EXECUTION CONTEXT SPLITTING - Various technologies and techniques are disclosed for enabling code to be executed on one or more execution contexts based upon declarative annotations contained in the code or other locations. An annotation associated with a region of code is located. The annotation specifies information about an execution context where the region of code should be executed. A caller proxy is generated that is responsible for calling a callee adapter to execute the region of code. The callee adapter is generated that is responsible for receiving a call from the caller proxy and for dispatching a call to the region of code at the execution context. At runtime, the caller proxy receives a request to call the region of code and sends an execution request to the callee adapter. The callee adapter receives the execution request and dispatches a call to an executable version of the region of code. | 08-06-2009 |
20090249282 | CROSS PLATFORM COMPOSITIONAL WIDGETS - Mechanisms are afforded for supporting cross platform widgets. A generic widget can be converted into a specialized widget of a corresponding platform. Dually, a specialized widget can be generalized to a generic widget for subsequent deployment on the same or different host. Furthermore, support is provided for compositional widgets across platforms. | 10-01-2009 |
20100106767 | AUTOMATICALLY SECURING DISTRIBUTED APPLICATIONS - A processing system for distributed multi-tier applications is provided. The system includes a server component that executes a replica of a client-side application, where a client component executes the client-side application. The client component captures events from the client-side application and transmits the events to the replica to validate the computational integrity security of the application. | 04-29-2010 |
20100125778 | Data-Driven Actions For Network Forms - Systems and/or methods are described that enable a data-driven action associated with altering a data instance of a network form without altering and/or having access to the data instance. These systems and/or methods, in one embodiment, render a result of a data-driven action for a network form without transforming the network form's data instance. In another embodiment, the systems and/or methods map a data-driven action to a view-centric logical representation of the electronic form. | 05-20-2010 |
20100131921 | EXPOSING ASYNCHRONOUS MECHANISMS AS FIRST-CLASS EVENTS - Conversions can be applied to various asynchronous and/or concurrent mechanisms. In particular, such mechanism can be transformed into first-class events to facilitate processing with respect to first-class events including but not limited to querying. Both conventional events and asynchronous computations can be transformed to these events, for example by generating and linking a proxy event thereto. | 05-27-2010 |
20100275137 | OPENING NETWORK-ENABLED ELECTRONIC DOCUMENTS - System(s), method(s), and/or technique(s) (“tools”) are described that enable a user to open a network-enabled electronic document in either a specific software application associated with the electronic document or a network browser. In some cases the tools do so using a single link On selection of the link, if the user's computing device has access to the specific software application, the tools may load the electronic document using that application. Or, if the user's computing device does not have access to the specific software application, the tools may render the electronic document with a network browser. In so doing, the tools may make the document available to a larger set of potential users through their browsers, allow users the convenience of accessing the document within a browser, optimize users' experience in working with the document through a specific software application, or provide a simpler opening procedure. | 10-28-2010 |
20110173620 | Execution Context Control - A system and method for controlling the execution of notifications in a computer system with multiple notification contexts. A RunOn operator enables context hopping between notification contexts. Push-based stream operators optionally perform error checking to determine if notifications combined into a push-based stream share a common notification context. Context boxes group together notification creators and associate their notifications with a common scheduler and notification context. Operators employ a composition architecture, in which they receive one or more push-based streams and produce a transformed push-based stream that may be further operated upon. Components may be used in combinations to implement various policies, including a strict policy in which all notifications are scheduled in a common execution context, a permissive policy that provides programming flexibility, and a hybrid policy that combines flexibility with error checking. | 07-14-2011 |
20110173621 | PUSH-BASED OPERATORS FOR PROCESSING OF PUSH-BASED NOTIFICATIONS - A library of operators is provided for performing operations on push-based streams. The library may be implemented in a computing device. The library may be stored on a tangible machine-readable medium and may include instructions to be executed by one or more processors of a computing device. The library of operators may include groups of operators for performing various types of operations regarding push-based streams. The groups of operators may include, but not be limited to, standard sequence operators, other sequence operators, time operators, push-based operators, asynchronous operators, exception operators, functional operators, context operators, and event-specific operators. | 07-14-2011 |
20110225565 | OPTIMAL INCREMENTAL WORKFLOW EXECUTION ALLOWING META-PROGRAMMING - A workflow is described and subsequently constructed by a general-purpose program. Among other things, such construction enables meta-programming to be employed. Further, workflow item and task dependencies can be explicitly expressed in the workflow and utilized to, among other things, optimize workflow execution for one or more factors. For instance, dependency information can be employed with respect to scheduling concurrent execution of tasks as well as to confine re-execution, upon workflow or item changes, to tasks affected by the changes. In addition, messages pertaining to workflow processing can be typed to facilitate logging in a structured and easily comprehensible manner. | 09-15-2011 |
20110276977 | DISTRIBUTED WORKFLOW EXECUTION - A workflow is designated for execution across a plurality of autonomous computational entities automatically. Among other things, the cost of computation is balanced with the cost of communication among computational entities to reduce total execution time of a workflow. In other words, a balance is struck between grouping tasks for execution on a single computational entity and segmenting tasks for execution across multiple computational entities. | 11-10-2011 |
20120084749 | PROGRAMMING LANGUAGE SUPPORT FOR REACTIVE PROGRAMMING - Program language support is provided to facilitate reactive programming. Code can be provided that initiates conversion between a first-class pattern and a second-class pattern, wherein the patterns operate with respect to push-based data. Support is also provided for producing and consuming push-based data in accordance with an iterator pattern, for example. | 04-05-2012 |
20120131546 | CODE DEPLOYMENT ASSISTANCE - Computer programming is aided by way of automatic code generation, and more specifically generation of deployment code automatically. An application can be analyzed and deployment code, including installation, maintenance (e.g., update/upgrade), and removal (e.g., un-install) code, can be generated as a function of the analysis as well as a particular execution environment. | 05-24-2012 |
20120144054 | MIXING SYNCHRONOUS AND ASYNCHRONOUS DATA STREAMS - A queue can store streams of data acquired from servers asynchronously based upon received data requests and subsequent subscription with respect to one or more data sources/servers. The queue can be managed for subsequent synchronous or asynchronous release of received streams of data, for example. | 06-07-2012 |
20140282879 | Automatically Securing Distributed Applications - A processing system for distributed multi-tier applications is provided. The system includes a server component that executes a replica of a client-side application, where a client component executes the client-side application. The client component captures events from the client-side application and transmits the events to the replica to validate the computational integrity security of the application. | 09-18-2014 |
20140344344 | PRE-FETCHING IN DISTRIBUTED COMPUTING ENVIRONMENTS - Client-side performance is optimized through server-side pushing of content. Portions of content are requested and retrieved as required by a client-side application. Moreover, content likely to be needed in the near future is pre-fetched and pushed to the client. This is beneficial from an overhead standpoint since all content need not be provided to the client at once. Rather, content provisioning is throttled based on need, and wait time is mitigated by pre-fetching. | 11-20-2014 |