Patents by Inventor Jan Lahoda

Jan Lahoda 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: 20240338186
    Abstract: Techniques for compiling switch blocks are disclosed. One or more embodiments analyze and rewrite a set of pattern labels in a switch block in a compile-time process for determining whether the switch block is exhaustive. At compile-time, a system populates a set with case labels from a switch block. The system applies a set of rules to iteratively re-write pattern labels in the set and checks whether the re-written set, and hence the original switch block, is exhaustive. If the compiler determines that (a) the set does not appear to be exhaustive, and (b) the set includes patterns labels, then the compiler determines whether the set may be rewritten before further analysis. The compiler iteratively re-writes and re-analyzes the case label set for exhaustivity until the case label set is determined to be exhaustive or cannot be rewritten further.
    Type: Application
    Filed: September 7, 2023
    Publication date: October 10, 2024
    Applicant: Oracle International Corporation
    Inventors: Gavin Mark Bierman, Brian Goetz, Jan Lahoda
  • Publication number: 20230259339
    Abstract: Cross-compiling, by a multi-version compiler, may produce complied code targeted to a specified release version of a programming platform supported by the compiler. The specified version may be different from a default version of the programming platform targeted by the compiler. Thus, the multi-version compiler may cross-compile source code to generate compiled code for different versions of the programming platform. A developer may specify the target version using a single compiler option and the compiler may, in response, cross-compile for the target version without requiring any additional options to be configured by the user. The multi-version compiler may include library data regarding multiple versions of the programming platform, preventing a developer from having to locate and provide the necessary library data for each targeted version.
    Type: Application
    Filed: April 26, 2023
    Publication date: August 17, 2023
    Inventors: Joseph D. Darcy, Jonathan Gibbons, Jan Lahoda, Magnus Ihse Bursie
  • Patent number: 11640284
    Abstract: Cross-compiling, by a multi-version compiler, may produce complied code targeted to a specified release version of a programming platform supported by the compiler. The specified version may be different from a default version of the programming platform targeted by the compiler. Thus, the multi-version compiler may cross-compile source code to generate compiled code for different versions of the programming platform. A developer may specify the target version using a single compiler option and the compiler may, in response, cross-compile for the target version without requiring any additional options to be configured by the user. The multi-version compiler may include library data regarding multiple versions of the programming platform, preventing a developer from having to locate and provide the necessary library data for each targeted version.
    Type: Grant
    Filed: December 2, 2015
    Date of Patent: May 2, 2023
    Assignee: Oracle International Corporation
    Inventors: Joseph D. Darcy, Jonathan J. Gibbons, Jan Lahoda, Magnus Ihse Bursie
  • Patent number: 10387142
    Abstract: Annotation processors defined by a module of a module system are used for processing annotations. Annotation processors defined by a module of a module system may be used with annotation processors defined by non-module code. A predefined deterministic process is used to select annotation processors for processing annotations. The predefined deterministic process imposes an order for searching and/or using annotation processors.
    Type: Grant
    Filed: September 16, 2016
    Date of Patent: August 20, 2019
    Assignee: Oracle International Corporation
    Inventors: Jonathan J. Gibbons, Vicente A. Romero Zaldivar, Jan Lahoda, Joseph Darcy
  • Publication number: 20180081677
    Abstract: Annotation processors defined by a module of a module system are used for processing annotations. Annotation processors defined by a module of a module system may be used with annotation processors defined by non-module code. A predefined deterministic process is used to select annotation processors for processing annotations. The predefined deterministic process imposes an order for searching and/or using annotation processors.
    Type: Application
    Filed: September 16, 2016
    Publication date: March 22, 2018
    Applicant: Oracle International Corporation
    Inventors: Jonathan J. Gibbons, Vicente A. Romero Zaldivar, Jan Lahoda, Joseph Darcy
  • Publication number: 20170161033
    Abstract: Cross-compiling, by a multi-version compiler, may produce complied code targeted to a specified release version of a programming platform supported by the compiler. The specified version may be different from a default version of the programming platform targeted by the compiler. Thus, the multi-version compiler may cross-compile source code to generate compiled code for different versions of the programming platform. A developer may specify the target version using a single compiler option and the compiler may, in response, cross-compile for the target version without requiring any additional options to be configured by the user. The multi-version compiler may include library data regarding multiple versions of the programming platform, preventing a developer from having to locate and provide the necessary library data for each targeted version.
    Type: Application
    Filed: December 2, 2015
    Publication date: June 8, 2017
    Inventors: Joseph D. Darcy, Jonathan J. Gibbons, Jan Lahoda, Magnus Ihse Bursie