Patents by Inventor John L Hamby

John L Hamby 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: 9229696
    Abstract: A common intermediate representation for a data scripting language is provided for efficient representation and direct specification of programming constructs in memory. The common intermediate representation of data scripts allows data intensive applications to be created and analyzed in a machine accessible format, and the elements of the common intermediate representation can be stored independent of underlying storage specifics. Stored elements of the common intermediate representation of code are thus available for fast loading in memory when desired by other applications and programs by mapping the stored elements to the in memory intermediate representation.
    Type: Grant
    Filed: May 24, 2013
    Date of Patent: January 5, 2016
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Donald F. Box, Bradford H. Lovering, John D. Doty, Jeffrey C. Schlimmer, John L. Hamby, David E. Langworthy
  • Publication number: 20130263099
    Abstract: A common intermediate representation for a data scripting language is provided for efficient representation and direct specification of programming constructs in memory. The common intermediate representation of data scripts allows data intensive applications to be created and analyzed in a machine accessible format, and the elements of the common intermediate representation can be stored independent of underlying storage specifics. Stored elements of the common intermediate representation of code are thus available for fast loading in memory when desired by other applications and programs by mapping the stored elements to the in memory intermediate representation.
    Type: Application
    Filed: May 24, 2013
    Publication date: October 3, 2013
    Applicant: Microsoft Corporation
    Inventors: Donald F. Box, Bradford H. Lovering, John D. Doty, Jeffrey C. Schlimmer, John L. Hamby, David E. Langworthy
  • Patent number: 8473897
    Abstract: A common intermediate representation for a data scripting language is provided for efficient representation and direct specification of programming constructs in memory. The common intermediate representation of data scripts allows data intensive applications to be created and analyzed in a machine accessible format, and the elements of the common intermediate representation can be stored independent of underlying storage specifics. Stored elements of the common intermediate representation of code are thus available for fast loading in memory when desired by other applications and programs by mapping the stored elements to the in memory intermediate representation.
    Type: Grant
    Filed: October 3, 2008
    Date of Patent: June 25, 2013
    Assignee: Microsoft Corporation
    Inventors: Donald F. Box, Bradford H. Lovering, John D. Doty, Jeffrey C. Schlimmer, John L. Hamby, David E. Langworthy
  • Patent number: 8321833
    Abstract: The subject disclosure relates to a syntax for a scripting language that allows data intensive applications to be written in a compact, human friendly, textual format. The scripting language can be a declarative programming language, such as the “D” programming language, which is well suited to the authoring of data intensive programs. A compact query syntax is provided for D that simplifies the expression of complex and data intensive programs. In another non-limiting aspect, conventional operator precedence is modified to accommodate the compact syntax and other unique features of a general purpose declarative programming language.
    Type: Grant
    Filed: October 3, 2008
    Date of Patent: November 27, 2012
    Assignee: Microsoft Corporation
    Inventors: David E. Langworthy, Bradford H. Lovering, Donald F. Box, Giovanni M. Della-Libera, Jeffrey S. Pinkston, Jeffrey C. Schlimmer, John D. Doty, John L. Hamby
  • Patent number: 8296744
    Abstract: Embodiments of tree-based directed graph programming structures for a declarative programming language are provided. In various embodiments, complex graph structured data, referred to as “DGraphs” herein in one non-limiting implementation, is authored using a compact, human friendly syntax without the use of explicit identifiers. In one non-limiting aspect, the syntax includes support for conformance relationships, also referred to as factored relationships. In another non-limiting aspect, the semistructured graph data is a tree-based representation and the syntax includes lexical resolution of references or lexical scoping, and/or non local initialization.
    Type: Grant
    Filed: October 3, 2008
    Date of Patent: October 23, 2012
    Assignee: Microsoft Corporation
    Inventors: David E. Langworthy, John L. Hamby, Bradford H. Lovering, Donald F. Box
  • Patent number: 7934207
    Abstract: Systems and methods that integrate data type conversion(s) into a programming language, and describe external formats within a syntax thereof. A mapping component defines a declarative mapping from an external data format to one or more of its internal data types (e.g., expressing external data types in terms of source languages.) Moreover, a rule establishing component can define value-based rules, such as invariants to the external data format, wherein the schema declaration further defines data fields that make up the schema. Accordingly, by expressing rules in form of predicate logic (instead of imperative program logic) the subject innovation increase a likelihood that compilers can reason about the data.
    Type: Grant
    Filed: December 19, 2006
    Date of Patent: April 26, 2011
    Assignee: Microsoft Corporation
    Inventors: Niklas Gustafsson, John L. Hamby, Patrick J. Helland
  • Publication number: 20100088666
    Abstract: A common intermediate representation for a data scripting language is provided for efficient representation and direct specification of programming constructs in memory. The common intermediate representation of data scripts allows data intensive applications to be created and analyzed in a machine accessible format, and the elements of the common intermediate representation can be stored independent of underlying storage specifics. Stored elements of the common intermediate representation of code are thus available for fast loading in memory when desired by other applications and programs by mapping the stored elements to the in memory intermediate representation.
    Type: Application
    Filed: October 3, 2008
    Publication date: April 8, 2010
    Applicant: Microsoft Corporation
    Inventors: Donald F. Box, Bradford H. Lovering, John D. Doty, Jeffrey C. Schlimmer, John L. Hamby, David E. Langworthy
  • Publication number: 20100088672
    Abstract: The subject disclosure relates to a syntax for a scripting language that allows data intensive applications to be written in a compact, human friendly, textual format. The scripting language can be a declarative programming language, such as the “D” programming language, which is well suited to the authoring of data intensive programs. A compact query syntax is provided for D that simplifies the expression of complex and data intensive programs. In another non-limiting aspect, conventional operator precedence is modified to accommodate the compact syntax and other unique features of a general purpose declarative programming language.
    Type: Application
    Filed: October 3, 2008
    Publication date: April 8, 2010
    Applicant: MICROSOFT CORPORATION
    Inventors: David E. Langworthy, Bradford H. Lovering, Donald F. Box, Douglas A. Walter, Giovanni M. Della-Libera, Jeffrey S. Pinkston, John D. Doty, John L. Hamby
  • Publication number: 20100088665
    Abstract: Embodiments of tree-based directed graph programming structures for a declarative programming language are provided. In various embodiments, complex graph structured data, referred to as “DGraphs” herein in one non-limiting implementation, is authored using a compact, human friendly syntax without the use of explicit identifiers. In one non-limiting aspect, the syntax includes support for conformance relationships, also referred to as factored relationships. In another non-limiting aspect, the semistructured graph data is a tree-based representation and the syntax includes lexical resolution of references or lexical scoping, and/or non local initialization.
    Type: Application
    Filed: October 3, 2008
    Publication date: April 8, 2010
    Applicant: MICROSOFT CORPORATION
    Inventors: David E. Langworthy, John L. Hamby, Bradford H. Lovering, Donald F. Box
  • Patent number: 7676791
    Abstract: The present invention adds support for concurrency to a mainstream object-oriented language. Language extensions are provided that can enable programs to be developed that can either be run in one address space, distributed across several process on a single computer, or distributed across a local-area or wide-area network, without recoding the program. Central to this aspect is the notion of a service, which can execute its own algorithmic (logical) thread. Services do not share memory or synchronize using explicit synchronization primitives. Rather, both data sharing and synchronization is accomplished via message-passing, e.g., a set of explicitly declared messages are sent between services. Messages can contain data that is shared, and the pattern of message exchange provide the necessary synchronization.
    Type: Grant
    Filed: July 9, 2004
    Date of Patent: March 9, 2010
    Assignee: Microsoft Corporation
    Inventors: John L. Hamby, Niklas Gustafsson, Jason P. Allen
  • Patent number: 7516441
    Abstract: A system and method of providing edit and continue support in a software program debugging environment. “Edit and continue” support allows a user (e.g., programmer and/or developer) to update the code and/or data structure(s) of an executing program while it is running. After the user has finished editing their code and resumes execution, an integrated development environment (IDE) propagates the edit(s) into a common language runtime (CLR) environment before continuing. Therefore, from the CLR environment's perspective, an edit is a block of intermediate language code (IL) and/or metadata that is inserted into a running process. Moreover, The IDE can facilitate: determining “legality” of an edit; building the edit; sending the edit to the CLR environment; and/or, facilitating the CLR environment switch execution to the edited code.
    Type: Grant
    Filed: July 21, 2004
    Date of Patent: April 7, 2009
    Assignee: Microsoft Corporation
    Inventors: Jennifer A Hamilton, Michael M Magruder, James H Hogg, William G Evans, Vance P Morrison, Lawrence B Sullivan, Sean E Trowbridge, Jason L Zander, Ian H Carmichael, Patrick H Dussud, John L Hamby, John J Rivard, Li Zhang, Mario Chenier, Douglas Rosen, Steven J Steiner, Peter A Hallam, Brian R Crawford, James S Miller, Sam Spencer, Habib Heydarian
  • Publication number: 20080147698
    Abstract: Systems and methods that integrate data type conversion(s) into a programming language, and describe external formats within a syntax thereof. A mapping component defines a declarative mapping from an external data format to one or more of its internal data types (e.g., expressing external data types in terms of source languages.) Moreover, a rule establishing component can define value-based rules, such as invariants to the external data format, wherein the schema declaration further defines data fields that make up the schema. Accordingly, by expressing rules in form of predicate logic (instead of imperative program logic) the subject innovation increase a likelihood that compilers can reason about the data.
    Type: Application
    Filed: December 19, 2006
    Publication date: June 19, 2008
    Applicant: MICROSOFT CORPORATION
    Inventors: Niklas Gustafsson, John L. Hamby, Patrick J. Helland