Patents by Inventor Alexander R. Buckley

Alexander R. Buckley 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: 20230135425
    Abstract: Techniques for determining and displaying error messages including a cause of an error generated because two types are not members of the same nest are disclosed. The system detects, at runtime, an instruction in a first type that attempts to access a private member of a second type. The system evaluates one or more nestmate criteria to determine whether the first type and the second type are within a same nest. A nest host corresponding to the nest specifies each nest member of the nest, and each nest member specifies an association with the nest. Responsive to determining that a particular nestmate criterion is not met, the system determines that the first type and the second type are not within the same nest and records or displays data identifying the particular nestmate criterion that has not been met, and throws an access error.
    Type: Application
    Filed: December 29, 2022
    Publication date: May 4, 2023
    Applicant: Oracle International Corporation
    Inventors: Alexander R. Buckley, John R. Rose, Daniel Lee Smith, David Colin Holmes, Lai Hung Mandy Chung
  • Patent number: 11599551
    Abstract: Techniques for deserializing stream objects are disclosed. The system may receive data representing a stream object. The data can include an object descriptor, a class descriptor, and stream field values corresponding to the stream object. The system may select a particular deserialization process, from among a plurality of deserialization processes. The selection may be based at least in part on the object descriptor and the class descriptor. The system can deserialize the data representing the stream object using the selected deserialization process, yielding one or more deserialized objects.
    Type: Grant
    Filed: March 30, 2020
    Date of Patent: March 7, 2023
    Assignee: Oracle International Corporation
    Inventors: Chris Hegarty, Alexander R. Buckley
  • Patent number: 11568047
    Abstract: Techniques for determining and displaying error messages including a cause of an error generated because two types are not members of the same nest are disclosed. The system detects, at runtime, an instruction in a first type that attempts to access a private member of a second type. The system evaluates one or more nestmate criteria to determine whether the first type and the second type are within a same nest. A nest host corresponding to the nest specifies each nest member of the nest, and each nest member specifies an association with the nest. Responsive to determining that a particular nestmate criterion is not met, the system determines that the first type and the second type are not within the same nest and records or displays data identifying the particular nestmate criterion that has not been met, and throws an access error.
    Type: Grant
    Filed: August 26, 2020
    Date of Patent: January 31, 2023
    Assignee: Oracle International Corporation
    Inventors: Alexander R. Buckley, John R. Rose, Daniel Lee Smith, David Colin Holmes, Lai Hung Mandy Chung
  • Patent number: 11477258
    Abstract: Techniques for serializing objects stored in system memory are disclosed. The system may receive data representing an object stored in system memory. The system may select a particular serialization process, from among a plurality of serialization processes, for serializing the received data. The particular serialization process may be selected based at least in part on the received data. The system may serialize the data representing the object in system memory using the selected serialization process. Serializing the data may yield one or more stream objects.
    Type: Grant
    Filed: March 30, 2020
    Date of Patent: October 18, 2022
    Assignee: Oracle International Corporation
    Inventors: Chris Hegarty, Alexander R. Buckley
  • Patent number: 11366643
    Abstract: A runtime environment generates a proxy class in response to detecting a request for a proxy object. The proxy class implements a set of interfaces specified by the request for the proxy object. The runtime environment selects or generates a proxy module, in a module system, to include the proxy class. The runtime environment exposes interfaces from other modules to the proxy module using a qualified export that does not expose the interfaces to modules other than the proxy module. The runtime environment does not expose the proxy class, of the proxy module, to other modules in the module system.
    Type: Grant
    Filed: May 6, 2020
    Date of Patent: June 21, 2022
    Assignee: Oracle International Corporation
    Inventors: Alexander R. Buckley, Mandy Chung, Alan Bateman
  • Patent number: 11366657
    Abstract: Techniques for inferring code deprecation from module deprecation are disclosed. A system detects a reference to a type. The system determines that a particular module, in a plurality of modules in a module system, exposes the referenced type. The system determines that the particular module is associated with a deprecation status. Responsive to determining that the particular module is associated with the deprecation status, the system presents information indicating that the reference references a deprecated module.
    Type: Grant
    Filed: April 23, 2020
    Date of Patent: June 21, 2022
    Assignee: Oracle International Corporation
    Inventors: Chris Hegarty, Alexander R. Buckley, Stuart Warren Marks
  • Patent number: 11288045
    Abstract: A data-instantiator method handle is configured to instantiate a target class based on a structured data object. One type of data-instantiator method handles is a Structured Data Object Processor method handle (SDOP_mh). The runtime environment invokes a SDOP_mh to create a target object based on a name-index map and an index-value map. The SDOP_mh is adapted, directly or indirectly, from a direct method handle that references a constructor of the target class. In an embodiment, the constructor referenced by the direct method handle is a canonical constructor. In an embodiment, the SDOP_mh is a runtime-computed constant in a runtime constant pool.
    Type: Grant
    Filed: February 9, 2021
    Date of Patent: March 29, 2022
    Assignee: Oracle International Corporation
    Inventors: Chris Hegarty, Alexander R. Buckley, Julia Katharina Boes
  • Publication number: 20220067152
    Abstract: Techniques for determining and displaying error messages including a cause of an error generated because two types are not members of the same nest are disclosed. The system detects, at runtime, an instruction in a first type that attempts to access a private member of a second type. The system evaluates one or more nestmate criteria to determine whether the first type and the second type are within a same nest. A nest host corresponding to the nest specifies each nest member of the nest, and each nest member specifies an association with the nest. Responsive to determining that a particular nestmate criterion is not met, the system determines that the first type and the second type are not within the same nest and records or displays data identifying the particular nestmate criterion that has not been met, and throws an access error.
    Type: Application
    Filed: August 26, 2020
    Publication date: March 3, 2022
    Applicant: Oracle International Corporation
    Inventors: Alexander R. Buckley, John R. Rose, Daniel Lee Smith, David Colin Holmes, Lai Hung Mandy Chung
  • Patent number: 11256480
    Abstract: A data-instantiator method handle is configured to create a target object based on a stream object. One type of data-instantiator method handles is a Stream Object Processor method handle (SOP_mh). A SOP_mh is a runtime-computed constant in a runtime constant pool. A runtime environment resolves the SOP_mh lazily responsive to a request to access the SOP_mh. The runtime environment invokes the SOP_mh to create a target object based on a stream object. By virtue of being a constant in the runtime constant pool, the SOP_mh is a candidate for optimization by a dynamic compiler in the runtime environment. The dynamic compiler may elect to constant fold the value of the SOP_mh and inline any code or executable logic that the SOP_mh refers to.
    Type: Grant
    Filed: February 9, 2021
    Date of Patent: February 22, 2022
    Assignee: Oracle International Corporation
    Inventors: Chris Hegarty, Alexander R. Buckley, Julia Katharina Boes
  • Publication number: 20210306398
    Abstract: Techniques for serializing objects stored in system memory are disclosed. The system may receive data representing an object stored in system memory. The system may select a particular serialization process, from among a plurality of serialization processes, for serializing the received data. The particular serialization process may be selected based at least in part on the received data. The system may serialize the data representing the object in system memory using the selected serialization process. Serializing the data may yield one or more stream objects.
    Type: Application
    Filed: March 30, 2020
    Publication date: September 30, 2021
    Applicant: Oracle International Corporation
    Inventors: Chris Hegarty, Alexander R. Buckley
  • Publication number: 20210303587
    Abstract: Techniques for deserializing stream objects are disclosed. The system may receive data representing a stream object. The data can include an object descriptor, a class descriptor, and stream field values corresponding to the stream object. The system may select a particular deserialization process, from among a plurality of deserialization processes. The selection may be based at least in part on the object descriptor and the class descriptor. The system can deserialize the data representing the stream object using the selected deserialization process, yielding one or more deserialized objects.
    Type: Application
    Filed: March 30, 2020
    Publication date: September 30, 2021
    Applicant: Oracle International Corporation
    Inventors: Chris Hegarty, Alexander R. Buckley
  • Patent number: 11048489
    Abstract: An annotation is applicable to a module element if a particular condition is satisfied; the annotation is not applicable (and an error or warning may be presented) if the particular condition is not satisfied. In an embodiment, a condition for applicability of an annotation to a module element requires that a module descriptor associated with a defining module declares use of at least one implementation of the module element. A condition associated with an annotation may be specified in a meta-annotation annotating a declaration of an annotation type associated with the annotation.
    Type: Grant
    Filed: June 4, 2019
    Date of Patent: June 29, 2021
    Assignee: Oracle International Corporation
    Inventor: Alexander R. Buckley
  • Publication number: 20210036944
    Abstract: Techniques for ranking service implementations for a service interface are disclosed. Each module that includes a service implementation may be referred to as a “service provider module.” The ranking of the service implementations, for the particular service interface, may be based on modular information. Modular information includes information associated with module dependencies and/or service dependencies corresponding to one or more of a candidate set of service provider modules. Additionally or alternatively, the ranking of the service implementations, for the particular service interface, may be based on statically-available information and/or dynamically-available information associated with one or more of a candidate set of service implementations.
    Type: Application
    Filed: October 19, 2020
    Publication date: February 4, 2021
    Applicant: Oracle International Corporation
    Inventors: Alexander R. Buckley, Eric Sutton
  • Patent number: 10846417
    Abstract: Techniques for identifying permitted illegal access operations in a module system are disclosed. An operation, expressed in a first module, that attempts to access a module element of a second module is identified. Based on a module declaration associated with the second module, the module element is determined inaccessible to the first module. Additionally or alternatively, based on an access modifier associated with the module element, the module element is determined inaccessible to the operation. The operation is determined as an illegal access operation. The illegal access operation is permitted to access the module element. A warning corresponding to the illegal access operation is generated.
    Type: Grant
    Filed: October 17, 2017
    Date of Patent: November 24, 2020
    Assignee: Oracle International Corporation
    Inventors: Alan Bateman, Chris Hegarty, Alexander R. Buckley, Brian Goetz, Mark B. Reinhold
  • Patent number: 10848410
    Abstract: Techniques for ranking service implementations for a service interface are disclosed. Each module that includes a service implementation may be referred to as a “service provider module.” The ranking of the service implementations, for the particular service interface, may be based on modular information. Modular information includes information associated with module dependencies and/or service dependencies corresponding to one or more of a candidate set of service provider modules. Additionally or alternatively, the ranking of the service implementations, for the particular service interface, may be based on statically-available information and/or dynamically-available information associated with one or more of a candidate set of service implementations.
    Type: Grant
    Filed: March 29, 2017
    Date of Patent: November 24, 2020
    Assignee: Oracle International Corporation
    Inventors: Alexander R. Buckley, Eric Sutton
  • Publication number: 20200264846
    Abstract: A runtime environment generates a proxy class in response to detecting a request for a proxy object. The proxy class implements a set of interfaces specified by the request for the proxy object. The runtime environment selects or generates a proxy module, in a module system, to include the proxy class. The runtime environment exposes interfaces from other modules to the proxy module using a qualified export that does not expose the interfaces to modules other than the proxy module. The runtime environment does not expose the proxy class, of the proxy module, to other modules in the module system.
    Type: Application
    Filed: May 6, 2020
    Publication date: August 20, 2020
    Applicant: Oracle International Corporation
    Inventors: Alexander R. Buckley, Mandy Chung, Alan Bateman
  • Publication number: 20200249940
    Abstract: Techniques for inferring code deprecation from module deprecation are disclosed. A system detects a reference to a type. The system determines that a particular module, in a plurality of modules in a module system, exposes the referenced type. The system determines that the particular module is associated with a deprecation status. Responsive to determining that the particular module is associated with the deprecation status, the system presents information indicating that the reference references a deprecated module.
    Type: Application
    Filed: April 23, 2020
    Publication date: August 6, 2020
    Applicant: Oracle International Corporation
    Inventors: Chris Hegarty, Alexander R. Buckley, Stuart Warren Marks
  • Patent number: 10713025
    Abstract: Declarations of annotation types, which specify annotations, are themselves annotated by meta-annotations. Meta-annotations define constraints based on modular dependencies.
    Type: Grant
    Filed: February 28, 2019
    Date of Patent: July 14, 2020
    Assignee: Oracle International Corporation
    Inventor: Alexander R. Buckley
  • Patent number: 10684827
    Abstract: A runtime environment generates a proxy class in response to detecting a request for a proxy object. The proxy class implements a set of interfaces specified by the request for the proxy object. The runtime environment selects or generates a proxy module, in a module system, to include the proxy class. The runtime environment exposes interfaces from other modules to the proxy module using a qualified export that does not expose the interfaces to modules other than the proxy module. The runtime environment does not expose the proxy class, of the proxy module, to other modules in the module system.
    Type: Grant
    Filed: August 23, 2018
    Date of Patent: June 16, 2020
    Assignee: Oracle International Corporation
    Inventors: Alexander R. Buckley, Mandy Chung, Alan Bateman
  • Patent number: 10671383
    Abstract: Techniques for inferring code deprecation from module deprecation are disclosed. A system detects a reference to a type. The system determines that a particular module, in a plurality of modules in a module system, exposes the referenced type. The system determines that the particular module is associated with a deprecation status. Responsive to determining that the particular module is associated with the deprecation status, the system presents information indicating that the reference references a deprecated module.
    Type: Grant
    Filed: December 4, 2017
    Date of Patent: June 2, 2020
    Assignee: Oracle International Corporation
    Inventors: Chris Hegarty, Alexander R. Buckley, Stuart Warren Marks