Patents by Inventor John Hamby

John 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: 10104954
    Abstract: The portable tray for a folding chair is a table. The portable tray for a folding chair is configured for use with a drink holder. The portable tray for a folding chair attaches to the drink holder such that a portion of the load path of the portable tray for a folding chair transfers through the drink holder to the supporting surface that supports the structure containing the drink holder. The portable tray for a folding chair comprises a tray, a telescopic stanchion, and a stabilizer. The tray is a horizontal surface that is used to support objects. The telescopic stanchion is a vertical support that raises the tray above the supporting surface. The stabilizer is a device that attaches the tray to the drink holder. The vertical span of the telescopic stanchion is adjustable.
    Type: Grant
    Filed: October 24, 2017
    Date of Patent: October 23, 2018
    Inventor: John Hamby
  • Patent number: 7934380
    Abstract: One aspect relates to an apparatus having a combustion chamber and a duct in fluid flow communication with the combustion chamber. The apparatus includes at least one opening adapted for delivering a liquid fuel into the duct. The apparatus further includes at least one passage adapted for delivery of a gas upstream of the at least one opening for minimizing the entrance of a fluid other than the gas into the fuel delivery opening.
    Type: Grant
    Filed: October 26, 2007
    Date of Patent: May 3, 2011
    Assignee: Rolls-Royce Power Engineering plc
    Inventors: Matthew Christopher Innes, Walter Kasimierz Omielan, Richard John Hamby
  • Patent number: 7620944
    Abstract: Techniques are disclosed to support the resolution of an operator which has been called with inconsistent typing and at least one operand of a user-defined type. In order to allow the compilation of such an operation, first all possible widening conversions for each operand are examined to determine if any widening conversions of any operands would result in types over which the operator is defined. If not, both the narrowing and the widening conversions of each operand are considered, to determine if any conversions of either or both operands would result in types for which the operator is defined. If only widening conversions are used, the most encompassed possible result type is selected as the target type. If a narrowing conversion is used, the most encompassing possible result type is selected as the target type. In order to use the target type, each operand is converted to the target type. The operation is then performed using the converted operands.
    Type: Grant
    Filed: October 31, 2003
    Date of Patent: November 17, 2009
    Assignee: Microsoft Corporation
    Inventors: Cameron Beccario, Paul Vick, Harish Venkata Kantamneni, Amanda Silver, John Hamby
  • Publication number: 20060020446
    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: Application
    Filed: July 9, 2004
    Publication date: January 26, 2006
    Applicant: Microsoft Corporation
    Inventors: John Hamby, Niklas Gustafsson, Jason Allen
  • Publication number: 20050097532
    Abstract: Techniques are disclosed to support the resolution of an operator which has been called with inconsistent typing and at least one operand of a user-defined type. In order to allow the compilation of such an operation, first all possible widening conversions for each operand are examined to determine if any widening conversions of any operands would result in types over which the operator is defined. If not, both the narrowing and the widening conversions of each operand are considered, to determine if any conversions of either or both operands would result in types for which the operator is defined. If only widening conversions are used, the most encompassed possible result type is selected as the target type. If a narrowing conversion is used, the most encompassing possible result type is selected as the target type. In order to use the target type, each operand is converted to the target type. The operation is then performed using the converted operands.
    Type: Application
    Filed: October 31, 2003
    Publication date: May 5, 2005
    Inventors: Cameron Beccario, Paul Vick, Harish Kantamneni, Amanda Silver, John Hamby
  • Publication number: 20050034109
    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. 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: Application
    Filed: July 21, 2004
    Publication date: February 10, 2005
    Applicant: Microsoft Corporation
    Inventors: Jennifer Hamilton, Michael Magruder, James Hogg, William Evans, Vance Morrison, Lawrence Sullivan, Sean Trowbridge, Jason Zander, Ian Carmichael, Patrick Dussud, John Hamby, John Rivard, Li Zhang, Mario Chenier, Douglas Rosen, Steven Steiner, Peter Hallam, Brian Crawford, James Miller, Sam Spencer, Habib Heydarian
  • Patent number: 6067413
    Abstract: Method for enabling the simultaneous use of a first and a second programming language within a computer program, and apparatus to practice the method. To enable this sharing of languages, the present invention first provides for a common runtime representation of the data between the several languages in a program as a shared object model. The shared object model includes the layout of complex data structures (e.g., classes), the creation of data, the calling conventions, the destruction of data, the runtime representation of type information, dynamic function call dispatch, and dynamic type conversions. The use of a shared object model enables the sharing of the several compilers' internal representation of data between the different languages as a persistent shared symbol table. This shared internal data representation enables the several compilers to define their respective internal data representations in terms common to each of the compilers.
    Type: Grant
    Filed: June 13, 1996
    Date of Patent: May 23, 2000
    Assignee: Instantations, Inc.
    Inventors: Niklas Gustafsson, John Hamby
  • Patent number: 5848274
    Abstract: An incremental byte code compiler which provides a high-performance execution environment for dynamically linked languages and for distributed target-independent applications. The execution environment provided by the present invention includes an incremental byte code compiler for generating IL symbols and code objects from a byte code source file, a persistent symbol table for storing the IL symbols and code objects, and an incremental imager for dynamically forming the image of the program from the code objects. The present invention further provides an extremely efficient methodology for dynamically adding program elements to a program under execution.
    Type: Grant
    Filed: May 10, 1996
    Date of Patent: December 8, 1998
    Assignee: Supercede, Inc.
    Inventors: John Hamby, Niklas Gustafsson, Patrick Lau
  • Patent number: 5764989
    Abstract: An interactive program development system which replaces compilers, linkers and debuggers required for conventional software development. The present invention comprises a new program compilation system for producing a novel type of translated structure called a code object, and an Incremental Image which forms the program image from code objects and their respective intermediate language symbols stored in a persistent symbol table. The new program compilation system operates on conventional computers having a CPU, monitor, memory system and input devices. The present invention obviates the need to halt execution of a program under development or during maintenance update to correct programming errors.
    Type: Grant
    Filed: February 29, 1996
    Date of Patent: June 9, 1998
    Assignee: Supercede, Inc.
    Inventors: Niklas Gustafsson, John Hamby, Patrick Lau