Patents by Inventor Henricus Johannes Maria Meijer

Henricus Johannes Maria Meijer has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).

  • Publication number: 20120078878
    Abstract: Query operators such as those that perform grouping functionality can be implemented to execute lazily rather than eagerly. For instance, one or more groups can be created and/or populated lazily with one or more elements from a source sequence in response to a request for a group or element of a group. Furthermore, lazy execution can be optimized as a function of context surrounding a query, among other things.
    Type: Application
    Filed: September 28, 2010
    Publication date: March 29, 2012
    Applicant: MICROSOFT CORPORATION
    Inventors: Bart De Smet, Henricus Johannes Maria Meijer, Jeffrey Van Gogh, John Wesley Dyer
  • Publication number: 20120072411
    Abstract: A query over one or more push-based data sources is transformed into a data representation of the query. The data representation can subsequently be analyzed, optimized, and remoted, among other things. For example, the data representation can be utilized to generate code for an out-of-process execution engine. Additionally, the data representation can be employed with respect to conversions to and from various types and representations of data.
    Type: Application
    Filed: September 16, 2010
    Publication date: March 22, 2012
    Applicant: MICROSOFT CORPORATION
    Inventors: Bart De Smet, Henricus Johannes Maria Meijer
  • Publication number: 20120072442
    Abstract: Monadic types are preserved for query operators to further query operator compositionality utilizing operators defined over a monad. Query operators that are defined over a monad and are suited to return non-monadic types are constructed or altered to return a monadic type. For instance, aggregate query operators defined over a local or remote sequence monad can be generated that return a monadic type.
    Type: Application
    Filed: September 22, 2010
    Publication date: March 22, 2012
    Applicant: MICROSOFT CORPORATION
    Inventors: Bart De Smet, Henricus Johannes Maria Meijer, Jeffrey Van Gogh, John Wesley Dyer
  • Patent number: 8127284
    Abstract: A first computing device receives (over a network) from at least a second computing device a container that includes information relating to types of software code that are potentially invoked by a program executing on the first computing device. A determination is made according to an on-demand basis, during execution of the program, whether a particular type of software code is to be loaded from the at least second computing device to the first computing device.
    Type: Grant
    Filed: October 16, 2007
    Date of Patent: February 28, 2012
    Assignee: Microsoft Corporation
    Inventors: Henricus Johannes Maria Meijer, Jeffrey Van Gogh
  • Publication number: 20120047495
    Abstract: An execution environment is created or extended to include support for coroutines to facilitate reactive programming. Utilizing functionality provided by an execution environment, such as a virtual machine, additional operations are derived to enable creation, invocation, and suspension of coroutines.
    Type: Application
    Filed: August 18, 2010
    Publication date: February 23, 2012
    Applicant: MICROSOFT CORPORATION
    Inventors: Henricus Johannes Maria Meijer, Gavin Bierman
  • Patent number: 8108711
    Abstract: Communication symmetry is leveraged to facilitate testing of network services. To identify, isolate, understand, and resolve problems a test client is employed. In accordance with one aspect, a service can be provided for execution on a service consumer while the test client resides on a service provider. Roles are reversed to provide more testing freedom on the provider side and less intrusion on the consumer side. Additionally or alternatively, a service and/or test client can be shipped to consumers to aid testing in a real execution environment.
    Type: Grant
    Filed: October 30, 2007
    Date of Patent: January 31, 2012
    Assignee: Microsoft Corporation
    Inventors: Henricus Johannes Maria Meijer, Dragos A. Manolescu, Per Anton Vonge Nielsen
  • Patent number: 8108848
    Abstract: Functions are memoized automatically and transparently. Memoized code can be injected automatically within a program to facilitate efficient and/or expeditious execution thereof, among other things. The memoized code can intercept calls to an original function and return values in accordance with the code. Accordingly, callers of the function need not do anything special and can invoke the function without knowledge of it being memoized.
    Type: Grant
    Filed: August 15, 2007
    Date of Patent: January 31, 2012
    Assignee: Microsoft Corporation
    Inventors: Henricus Johannes Maria Meijer, Jeffrey van Gogh, Brian C. Beckman
  • Patent number: 8091070
    Abstract: A programming language is implemented in terms of another programming language via deep and/or modified shallow embedding. Embedded language control structures and/or type system are decomposed to primitive features. These features are semantically mapped to host language features. Other embedded language features are explicitly constructed in the host language. A map can also be constructed as a function of implementation to facilitate mapping embedded language applications to host language applications.
    Type: Grant
    Filed: January 8, 2007
    Date of Patent: January 3, 2012
    Assignee: Microsoft Corporation
    Inventors: Henricus Johannes Maria Meijer, Bruno S. Bozza, Brian C. Beckman
  • Patent number: 8073879
    Abstract: The present invention provides systems and methods that isomorphically maps constructs between domain spaces (e.g., object, markup, relational and user interface domains). The systems and methods employ a mapping component that utilizes at least one suppress label(s), introduce label(s) and/or mediating schema to facilitate construct mapping. Examples of such mapping include transforming a named construct to an anonymous construct, a named construct to a named construct, an anonymous construct to a named construct, and an anonymous construct to an anonymous construct. In general, introduce labels can be utilized to provide names for anonymous constructs and/or modify existing names; suppress labels typically are utilized to suppress names such as introduced names or names a user desires to be suppressed; and mediating schema can be utilized to provide a default or user customized mapping to an intermediate schema before, during and/or after construct mapping.
    Type: Grant
    Filed: March 25, 2004
    Date of Patent: December 6, 2011
    Assignee: Microsoft Corporation
    Inventors: Henricus Johannes Maria Meijer, Wolfram Schulte, Oludare V. Obasanjo
  • Patent number: 8060868
    Abstract: Providing for read/write access to captured free variables expressed as environment data objects is disclosed herein. By way of example, free variables can be rewritten as a field of a private class, and accessed via an instance of the private class captured within the environment data object. In such a manner, no need of a placeholder or proxy function is required to access the free variable. Consequently, the subject innovation provides a simplified method for capturing free variables within expression trees and providing read/write access to such variables.
    Type: Grant
    Filed: June 21, 2007
    Date of Patent: November 15, 2011
    Assignee: Microsoft Corporation
    Inventors: Henricus Johannes Maria Meijer, Anders Hejlsberg, Mads Torgersen, Peter A. Hallam, Matthew J. Warren, Dinesh C. Kulkarni, Clemens Alden Szyperski
  • Publication number: 20110276977
    Abstract: 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.
    Type: Application
    Filed: May 7, 2010
    Publication date: November 10, 2011
    Applicant: MICROSOFT CORPORATION
    Inventors: Danny van Velzen, Jeffrey van Gogh, Henricus Johannes Maria Meijer
  • Patent number: 8051426
    Abstract: A virtual machine is extended to include native support for co-routines. In this manner, high-level programmers are afforded access to such functionality. More particularly, supplied is a mechanism inside the virtual machine to enable method/function state to be maintained and subsequently restored. Consequently, a method/function can be called multiple times and resume where it last left off. This provides direct support for tier splitting patterns, iterators and comprehensions, among other things.
    Type: Grant
    Filed: January 4, 2007
    Date of Patent: November 1, 2011
    Assignee: Microsoft Corporation
    Inventors: Henricus Johannes Maria Meijer, Brian C. Beckman, Mark B. Shields
  • Publication number: 20110265070
    Abstract: APIs are provided, that are external to a programming language but that provide functionality that can be plugged into a language compiler. The provided APIs tailor functionality associated with asynchronous programming, iterators or writing symmetric co-routines using a generalized pattern-based approach. Several types of resumable methods are provided in the APIs which can be applied to method bodies written in traditional program code. Syntactically distinguishable control points in method bodies written in traditional program code invoke transformation of the code by the compiler using the external APIs. The transformed code enables the pausing and resumption of the code sandwiched between control points in the transformed code. The source code contained within a method having control points in it is transformed so that code within the method can be executed in discrete parts, each part starting and ending at a control point in the transformed code.
    Type: Application
    Filed: April 27, 2010
    Publication date: October 27, 2011
    Applicant: Microsoft Corporation
    Inventors: Henricus Johannes Maria Meijer, Mads Torgersen, Neal M. Gafter, Niklas Gustafsson
  • Patent number: 8037096
    Abstract: Memory efficient data processing is provided in a computer environment. A data representation or description is utilized to reduce memory footprint. A data structure can be serialized iteratively utilizing the representation rather than first loading the entire data structure to memory. Portions of the data structure can be materialized to and removed from memory as function of operational need.
    Type: Grant
    Filed: June 29, 2007
    Date of Patent: October 11, 2011
    Assignee: Microsoft Corporation
    Inventors: Michael Craig Champion, Anders Hejlsberg, Andrew Eyring Kimball, Ralf Lammel, Henricus Johannes Maria Meijer, Ion Vasilian
  • Publication number: 20110246962
    Abstract: A state machine may be represented using event-driven objects in a database query language. A bind operator from a database query language may be used as a state transition function, where the transition function has side effects defining the state. The objects may be manipulated with event driven expressions and operators and perform what would otherwise be complex operations with simple state machines.
    Type: Application
    Filed: April 5, 2010
    Publication date: October 6, 2011
    Applicant: Microsoft Corporation
    Inventors: Henricus Johannes Maria Meijer, Dragos A. Manolescu, Jeffrey van Gogh, John Wesley Dyer, Brian C. Beckman
  • Publication number: 20110246973
    Abstract: A compiler supporting a language in which selected semantic objects are represented as data objects. The data objects may be used in multiple ways to expand the capabilities of the programming language. Data objects may be passed to applications and used to create executable instructions for that application. In this way, instructions written in the native language of the compiler may be used to control applications that accept programs in a language inconsistent with the native language of the compiler. The syntax checking and variable binding capabilities of the compiler may be used for those instructions that will be executed by an application separate from the object code generated by the compiler. The semantic objects represented as data objects may be selected based on express operations included in the source code or may be based on implicit type conversion.
    Type: Application
    Filed: June 16, 2011
    Publication date: October 6, 2011
    Applicant: Microsoft Corporation
    Inventors: Henricus Johannes Maria Meijer, Anders Hejlsberg, Matthew J. Warren, Dinesh Chandrakant Kulkarni, Luca Bolognese, Peter A. Hallam, Gary S. Katzenberger, Donald Box
  • Patent number: 8032859
    Abstract: A system for extending data types in software comprises an extension unit that modifies an arbitrary preexisting base data type, the preexisting base data type having at least one member. The system also includes a supplemental member that is included with the extension unit and that provides additional functionality to the preexisting base type. Methods for using the system are also provided.
    Type: Grant
    Filed: August 29, 2005
    Date of Patent: October 4, 2011
    Assignee: Microsoft Corporation
    Inventors: Henricus Johannes Maria Meijer, Paul A. Vick, Brian C. Beckman, Amanda Silver
  • Publication number: 20110239229
    Abstract: An event driven application may predict a future event and spawn an event stream from the predicted event. The spawned event stream may be performed as a predicted operation until the prediction is confirmed to be correct or incorrect. The predicted operation may generate results that may be present when the prediction is confirmed. In some cases, the results may be used prior to the predicted event, while in other cases, the results may be cached until the prediction is confirmed. In some cases, the predicted operation may be merged with an actual event stream when the predicted event occurs. The prediction mechanism may enhance performance, enable operations that would otherwise be difficult, and may save battery life or energy in some devices.
    Type: Application
    Filed: March 26, 2010
    Publication date: September 29, 2011
    Applicant: Microsoft Corporation
    Inventors: Henricus Johannes Maria Meijer, Dragos A. Manolescu, Brian C. Beckman
  • Publication number: 20110225565
    Abstract: 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.
    Type: Application
    Filed: March 12, 2010
    Publication date: September 15, 2011
    Inventors: Danny van Velzen, Jeffrey van Gogh, Henricus Johannes Maria Meijer
  • Patent number: 8014308
    Abstract: The claimed subject matter provides systems and/or methods that facilitate dynamically allocating resources (e.g., hardware, software, . . . ) supported by a third party service provider. The third party service provider can support any number of services that can be concurrently requested by several clients without user perception of degraded computing performance as compared to conventional systems/techniques due to improved connectivity and mitigated latencies. An interface component can receive a request from a client device. Further, a dynamic allocation component can apportion resources (e.g., hardware resources) supported by the third party service provider to process and respond to the request based at least in part upon subscription data. Moreover, a user state evaluator can determine a state associated with a user and/or the client device; the state can be utilized by the dynamic allocation component to tailor resource allocation.
    Type: Grant
    Filed: September 28, 2006
    Date of Patent: September 6, 2011
    Assignee: Microsoft Corporation
    Inventors: William H. Gates, III, Gary W. Flake, William J. Bolosky, Nishant V. Dani, Daniel S. Glasser, Alexander G. Gounares, James R. Larus, Matthew B. MacLaurin, Henricus Johannes Maria Meijer