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: 20230135425Abstract: 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: ApplicationFiled: December 29, 2022Publication date: May 4, 2023Applicant: Oracle International CorporationInventors: Alexander R. Buckley, John R. Rose, Daniel Lee Smith, David Colin Holmes, Lai Hung Mandy Chung
-
Patent number: 11599551Abstract: 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: GrantFiled: March 30, 2020Date of Patent: March 7, 2023Assignee: Oracle International CorporationInventors: Chris Hegarty, Alexander R. Buckley
-
Patent number: 11568047Abstract: 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: GrantFiled: August 26, 2020Date of Patent: January 31, 2023Assignee: Oracle International CorporationInventors: Alexander R. Buckley, John R. Rose, Daniel Lee Smith, David Colin Holmes, Lai Hung Mandy Chung
-
Patent number: 11477258Abstract: 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: GrantFiled: March 30, 2020Date of Patent: October 18, 2022Assignee: Oracle International CorporationInventors: Chris Hegarty, Alexander R. Buckley
-
Patent number: 11366643Abstract: 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: GrantFiled: May 6, 2020Date of Patent: June 21, 2022Assignee: Oracle International CorporationInventors: Alexander R. Buckley, Mandy Chung, Alan Bateman
-
Patent number: 11366657Abstract: 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: GrantFiled: April 23, 2020Date of Patent: June 21, 2022Assignee: Oracle International CorporationInventors: Chris Hegarty, Alexander R. Buckley, Stuart Warren Marks
-
Patent number: 11288045Abstract: 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: GrantFiled: February 9, 2021Date of Patent: March 29, 2022Assignee: Oracle International CorporationInventors: Chris Hegarty, Alexander R. Buckley, Julia Katharina Boes
-
Publication number: 20220067152Abstract: 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: ApplicationFiled: August 26, 2020Publication date: March 3, 2022Applicant: Oracle International CorporationInventors: Alexander R. Buckley, John R. Rose, Daniel Lee Smith, David Colin Holmes, Lai Hung Mandy Chung
-
Patent number: 11256480Abstract: 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: GrantFiled: February 9, 2021Date of Patent: February 22, 2022Assignee: Oracle International CorporationInventors: Chris Hegarty, Alexander R. Buckley, Julia Katharina Boes
-
Publication number: 20210306398Abstract: 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: ApplicationFiled: March 30, 2020Publication date: September 30, 2021Applicant: Oracle International CorporationInventors: Chris Hegarty, Alexander R. Buckley
-
Publication number: 20210303587Abstract: 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: ApplicationFiled: March 30, 2020Publication date: September 30, 2021Applicant: Oracle International CorporationInventors: Chris Hegarty, Alexander R. Buckley
-
Patent number: 11048489Abstract: 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: GrantFiled: June 4, 2019Date of Patent: June 29, 2021Assignee: Oracle International CorporationInventor: Alexander R. Buckley
-
Publication number: 20210036944Abstract: 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: ApplicationFiled: October 19, 2020Publication date: February 4, 2021Applicant: Oracle International CorporationInventors: Alexander R. Buckley, Eric Sutton
-
Patent number: 10846417Abstract: 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: GrantFiled: October 17, 2017Date of Patent: November 24, 2020Assignee: Oracle International CorporationInventors: Alan Bateman, Chris Hegarty, Alexander R. Buckley, Brian Goetz, Mark B. Reinhold
-
Patent number: 10848410Abstract: 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: GrantFiled: March 29, 2017Date of Patent: November 24, 2020Assignee: Oracle International CorporationInventors: Alexander R. Buckley, Eric Sutton
-
Publication number: 20200264846Abstract: 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: ApplicationFiled: May 6, 2020Publication date: August 20, 2020Applicant: Oracle International CorporationInventors: Alexander R. Buckley, Mandy Chung, Alan Bateman
-
Publication number: 20200249940Abstract: 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: ApplicationFiled: April 23, 2020Publication date: August 6, 2020Applicant: Oracle International CorporationInventors: Chris Hegarty, Alexander R. Buckley, Stuart Warren Marks
-
Patent number: 10713025Abstract: Declarations of annotation types, which specify annotations, are themselves annotated by meta-annotations. Meta-annotations define constraints based on modular dependencies.Type: GrantFiled: February 28, 2019Date of Patent: July 14, 2020Assignee: Oracle International CorporationInventor: Alexander R. Buckley
-
Patent number: 10684827Abstract: 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: GrantFiled: August 23, 2018Date of Patent: June 16, 2020Assignee: Oracle International CorporationInventors: Alexander R. Buckley, Mandy Chung, Alan Bateman
-
Patent number: 10671383Abstract: 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: GrantFiled: December 4, 2017Date of Patent: June 2, 2020Assignee: Oracle International CorporationInventors: Chris Hegarty, Alexander R. Buckley, Stuart Warren Marks