Patents by Inventor Ralf Lammel

Ralf Lammel 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).

  • Patent number: 8732732
    Abstract: Systems and methods that enhance and balance a late binding and an early binding in a programming language, via supplying an option component to opt-in (or opt-out) late binding, and wherein a late binding is triggered based on a static type for the variable (e.g., object or a type/string.) Additionally, the variable is enabled to have different static types at different regions (e.g., a program fragment) of the programming language.
    Type: Grant
    Filed: June 25, 2013
    Date of Patent: May 20, 2014
    Assignee: Microsoft Corporation
    Inventors: Henricus Johannes Maria Meijer, Brian C. Beckman, David N. Schach, Amanda Silver, Paul A. Vick, Peter F. Drayton, Avner Y. Aharoni, Ralf Lammel
  • Publication number: 20130290987
    Abstract: Systems and methods that enhance and balance a late binding and an early binding in a programming language, via supplying an option component to opt-in (or opt-out) late binding, and wherein a late binding is triggered based on a static type for the variable (e.g., object or a type/string.) Additionally, the variable is enabled to have different static types at different regions (e.g., a program fragment) of the programming language.
    Type: Application
    Filed: June 25, 2013
    Publication date: October 31, 2013
    Inventors: Henricus Johannes Maria Meijer, Brian C. Beckman, David N. Schach, Amanda Silver, Paul A. Vick, Peter F. Drayton, Avner Y. Aharoni, Ralf Lammel
  • Patent number: 8473932
    Abstract: Systems and methods that enhance expressibility in a programming language (e.g., Visual Basic) via relaxation of artificial restrictions and extension of delegates associated therewith, without changing the runtime infrastructure. A stub is employed that can replace an impermissible expression in the programming language, to leverage the existing permissible expressions.
    Type: Grant
    Filed: March 1, 2010
    Date of Patent: June 25, 2013
    Assignee: Microsoft Corporation
    Inventors: Henricus Johannes Maria Meijer, Brian C. Beckman, Peter F. Drayton, David N. Schach, Ralf Lammel, Avner Y. Aharoni
  • Patent number: 8473971
    Abstract: Systems and methods that enhance and balance a late binding and an early binding in a programming language, via supplying an option component to opt-in (or opt-out) late binding, and wherein a late binding is triggered based on a static type for the variable (e.g., object or a type/string.) Additionally, the variable is enabled to have different static types at different regions (e.g., a program fragment) of the programming language.
    Type: Grant
    Filed: September 6, 2005
    Date of Patent: June 25, 2013
    Assignee: Microsoft Corporation
    Inventors: Henricus Johannes Maria Meijer, Brian C. Beckman, David N. Schach, Amanda Silver, Paul A. Vick, Peter F. Drayton, Avner Y. Aharoni, Ralf Lammel
  • Patent number: 8370391
    Abstract: An API for functionally updates to data represented in trees, such as XML trees, is provided. Functional updates can be implemented using an update combinator to search for matching nodes and apply an indicated function to those matching nodes. This API can be used in non-functional languages, such as procedural languages or scripting languages. Updates are performed without side effects since a shallow clone is created for at least a portion of a tree. Nodes of the tree can be streamed into memory so that only a portion of a large tree is present in memory at any time. Artificial intelligence can be used by the API to optimize performance under the circumstances, such as optimizing based on node type that is to be updated.
    Type: Grant
    Filed: March 25, 2008
    Date of Patent: February 5, 2013
    Assignee: Microsoft Corporation
    Inventors: Ralf Lammel, Henricus Johannes Maria Meijer
  • Patent number: 8132093
    Abstract: Object instance annotation technology is disclosed. This technology is capable of annotating any number of instances for any number of objects. Object instance annotations can be of various types, and annotations can serve as data extensions. Objects are enabled for annotation either by developers, or, alternatively, automatically by a programming language or framework. Furthermore, an interface is provided for annotations. This interface has a variety of operations, some of which allow for adding, retrieving, or removing annotations. Annotations can be reference types or even value types. They may also be private class types. Once object instances are enabled for annotating, and the interface is set up, this interface can annotate a multitude of different kinds of objects. For example, it can annotate generic objects, XML trees, CodeDom trees, and so on.
    Type: Grant
    Filed: August 14, 2006
    Date of Patent: March 6, 2012
    Assignee: Microsoft Corporation
    Inventors: Ralf Lammel, Anders Hejlsberg, Andrew E. Kimball, David Lawrence Remy, Erik Meijer
  • Publication number: 20120042234
    Abstract: Techniques are provided for performing focus inference when compiling an Extensible Markup Language Transforms (XSLT) stylesheet into a compiled XSLT processor. In XPath/XSLT, expression evaluation occurs with respect to the dynamic context. In XPath, the part of the dynamic context, related to the context node-set, is called the “focus” of the expression. Conceptually, the focus would need to be systematically computed and propagated along the recursive execution of XSLT templates. This is costly. Focus inference enables the more efficient execution of XSLT programs since the inferred focus information can be used directly by a code generator in an XSLT compilation architecture.
    Type: Application
    Filed: October 19, 2011
    Publication date: February 16, 2012
    Applicant: Microsoft Corporation
    Inventors: Anton V. Lapounov, Ralf Lammel, Sergey Dubinets
  • Patent number: 8074166
    Abstract: Techniques are provided for performing focus inference when compiling an Extensible Markup Language Transforms (XSLT) stylesheet into a compiled XSLT processor. In XPath/XSLT, expression evaluation occurs with respect to the dynamic context. In XPath, the part of the dynamic context, related to the context node-set, is called the “focus” of the expression. Conceptually, the focus would need to be systematically computed and propagated along the recursive execution of XSLT templates. This is costly. Focus inference enables the more efficient execution of XSLT programs since the inferred focus information can be used directly by a code generator in an XSLT compilation architecture.
    Type: Grant
    Filed: September 13, 2006
    Date of Patent: December 6, 2011
    Assignee: Microsoft Corporation
    Inventors: Anton V. Lapounov, Ralf Lammel, Sergey Dubinets
  • 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
  • Patent number: 8005848
    Abstract: Programming mechanisms for data parsing facilitate both clear code specification and efficient execution. Declarative style code can be employed to enable clear and concise specification of data parsing. Further, an efficient parsing approach can be utilized that enables processing of a data structure without first materializing the entire structure to memory. More specifically, streaming and/or selective materialization of portions of data to memory can be employed.
    Type: Grant
    Filed: June 28, 2007
    Date of Patent: August 23, 2011
    Assignee: Microsoft Corporation
    Inventors: Michael Craig Champion, Anders Hejlsberg, Andrew Eyring Kimball, Ralf Lammel, Henricus Johannes Maria Meijer, David L. Remy, Ion Vasilian
  • Patent number: 7861229
    Abstract: A schema code complexity analysis architecture that computes complexity data for output to a code designer. The complexity data can be in the form of a number and/or complexity level. A schema component is provided for processing schema code, and a metrics component, for outputting a complexity value based on complexity of the schema code. In one implementation, the schema code is based on an XML schema, and the metrics component employs a newly-defined variation of a McCabe cyclomatic complexity metric to determine the complexity value. The decisions employed for computing schema complexity can include choices, occurrence constraints, element references to substitution groups, type references to types that are extended or restricted, a multiplicity of root element declarations, and nillable elements.
    Type: Grant
    Filed: March 16, 2006
    Date of Patent: December 28, 2010
    Assignee: Microsoft Corporation
    Inventors: Ralf Lammel, Stanislav Kitsis, David L. Remy, Priyamvadha P. Lakshminarayanan
  • Publication number: 20100162218
    Abstract: Systems and methods that enhance expressibility in a programming language (e.g., Visual Basic) via relaxation of artificial restrictions and extension of delegates associated therewith, without changing the runtime infrastructure. A stub is employed that can replace an impermissible expression in the programming language, to leverage the existing permissible expressions.
    Type: Application
    Filed: March 1, 2010
    Publication date: June 24, 2010
    Applicant: Microsoft Corporation
    Inventors: Henricus Johannes Maria Meijer, Brian C. Beckman, Peter F. Drayton, David N. Schach, Ralf Lammel, Avner Y. Aharoni
  • Patent number: 7694285
    Abstract: Systems and methods that enhance expressibility in a programming language (e.g., Visual Basic) via relaxation of artificial restrictions and extension of delegates associated therewith, without changing the runtime infrastructure. A stub is employed that can replace an impermissible expression in the programming language, to leverage the existing permissible expressions.
    Type: Grant
    Filed: August 30, 2005
    Date of Patent: April 6, 2010
    Assignee: Microsoft Corporation
    Inventors: Henricus Johannes Maria Meijer, Brian C. Beckman, Peter F. Drayton, David N. Schach, Ralf Lammel, Avner Y. Aharoni
  • Patent number: 7680765
    Abstract: Iterate-aggregate shape queries are executable in an efficient parallel manner. Techniques are utilized that leverage properties of aggregations to implement such a query in a highly parallelized manner utilizing one or both of vertical and horizontal parallelism. More specifically, queries can be recursively evaluated in parallel utilizing partitioning and repartitioning mechanisms. Distributed query execution results over a subset of input data are repartitioned and aggregated to produce a final result.
    Type: Grant
    Filed: December 27, 2006
    Date of Patent: March 16, 2010
    Assignee: Microsoft Corporation
    Inventors: Henricus Johannes Maria Meijer, Ralf Lammel, Brian C. Beckman
  • Patent number: 7640470
    Abstract: Generation of test data for systems having functionality subject to a grammar or other sort of meta-data is automated by a controlled combinatorial approximation of naïve combinatorial coverage. A suite of control mechanisms are applied to an algorithm that generates test data to provide well-defined and understandable approximations of full combinatorial coverage.
    Type: Grant
    Filed: August 21, 2006
    Date of Patent: December 29, 2009
    Assignee: Microsoft Corporation
    Inventors: Ralf Lammel, Wolfram Schulte
  • Patent number: 7631003
    Abstract: Systems and methods that facilitate mapping from an XML schema to an object model, while mitigating object impedance mismatch. A normalization component can flatten nesting scopes and/or and reduce the number of types in subtyping hierarchies, and a core mapping component can supply the object type. A subsequent object level transformation can typically be performed on the object model, to create the final object model.
    Type: Grant
    Filed: February 20, 2007
    Date of Patent: December 8, 2009
    Assignee: Microsoft Corporation
    Inventor: Ralf Lammel
  • Publication number: 20090248624
    Abstract: An API for functionally updates to data represented in trees, such as XML trees, is provided. Functional updates can be implemented using an update combinator to search for matching nodes and apply an indicated function to those matching nodes. This API can be used in non-functional languages, such as procedural languages or scripting languages. Updates are performed without side effects since a shallow clone is created for at least a portion of a tree. Nodes of the tree can be streamed into memory so that only a portion of a large tree is present in memory at any time. Artificial intelligence can be used by the API to optimize performance under the circumstances, such as optimizing based on node type that is to be updated.
    Type: Application
    Filed: March 25, 2008
    Publication date: October 1, 2009
    Applicant: MICROSOFT CORPORATION
    Inventors: Ralf Lammel, Henricus Johannes Maria Meijer
  • Publication number: 20090006429
    Abstract: Programming mechanisms for data parsing facilitate both clear code specification and efficient execution. Declarative style code can be employed to enable clear and concise specification of data parsing. Further, an efficient parsing approach can be utilized that enables processing of a data structure without first materializing the entire structure to memory. More specifically, streaming and/or selective materialization of portions of data to memory can be employed.
    Type: Application
    Filed: June 28, 2007
    Publication date: January 1, 2009
    Applicant: MICROSOFT CORPORATION
    Inventors: Michael Craig Champion, Anders Hejlsberg, Andrew Eyring Kimball, Ralf Lammel, Henricus Johannes Maria Meijer, David L. Remy, Ion Vasilian
  • Publication number: 20090006450
    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: Application
    Filed: June 29, 2007
    Publication date: January 1, 2009
    Applicant: MICROSOFT CORPORATION
    Inventors: Michael Craig Champion, Anders Hejlsberg, Andrew Eyring Kimball, Ralf Lammel, Henricus Johannes Maria Meijer, Ion Vasilian
  • Publication number: 20080201351
    Abstract: Systems and methods that facilitate mapping from an XML schema to an object model, while mitigating object impedance mismatch. A normalization component can flatten nesting scopes and/or and reduce the number of types in subtyping hierarchies, and a core mapping component can supply the object type. A subsequent object level transformation can typically be performed on the object model, to create the final object model.
    Type: Application
    Filed: February 20, 2007
    Publication date: August 21, 2008
    Applicant: MICROSOFT CORPORATION
    Inventor: Ralf Lammel