Patents by Inventor John R. Rose

John R. Rose 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: 20150301812
    Abstract: Metadata-driven dynamic specialization may include applying a type erasure operation to a set of instruction in a generic class or to a method declaration that includes typed variables using an encoded form of an instruction or an argument to an instruction. The instruction may operate on values of the reference types and the argument may be a signature that indicates the reference types. The encoded form may be annotated to include metadata indicating which type variables have been erased and which reference types are the erasures of type variables. Additionally, the metadata may indicate that the instruction operates on values of, and that the argument indicates reference types that are erasures of, the type variables of the class (or method) declaration. Moreover, the encoded form of the instruction or argument may be used directly without specialization or transformation.
    Type: Application
    Filed: March 17, 2015
    Publication date: October 22, 2015
    Inventors: Brian Goetz, John R. Rose, Alexander R. Buckley
  • Publication number: 20150301837
    Abstract: Structural identification of dynamically generated, pattern-instantiation classes may be utilized using structural descriptions. Instead of describing classes only by name, and using that name to locate that class, a class may be referred to by a generator function and arguments to the generator function. A structural description may specify the generator function and the parameters. In addition, a structural description of a class may be used as a parameter to a generator function specified by another structural description. A structural description may be used similarly to a class name for virtually any situation in which a class name may be used. Classes may be compared using their structural descriptions. For example, two structural descriptions may be considered to be the same class if they specify the same generator function and parameters.
    Type: Application
    Filed: March 17, 2015
    Publication date: October 22, 2015
    Inventors: Brian Goetz, John R. Rose
  • Publication number: 20150301808
    Abstract: While a runtime specializer may always be able to generate an automated specialized version of a generic class, in some cases an alternate form of user control over specialization may allow the use of automated specialization while also adding (or overriding) specialization-specific method implementations. In general, the set of members of a generic class may not change when the class is specialized. In other words, the same members may exist in the auto-specialized version as in the generic version. However, manual refinement of specialized classes may allow a developer to hand specialize a particular (possibly a better) representation and/or implementation of one or more methods of the specialized class.
    Type: Application
    Filed: April 21, 2015
    Publication date: October 22, 2015
    Inventors: Brian Goetz, John R. Rose, Alexander R. Buckley
  • Publication number: 20150301807
    Abstract: Generic classes may have more than one specializable type parameter and it may be desirable to specialize one or more of the type variables while not specializing others. The result of partial specialization may be one or more additional generic classes that are further specializable on the remaining type parameters. A runtime specializer may partially specialize a generic class to produce a partially specialized class and may subsequently further specialize the partially specialized class to generate a fully specialized class. Thus, rather than performing the specialization of a generic class all at once, such as by specializing Map<K, V> into Map<int, int> or Map<long, int>, one type parameter may be partially specialized, such as resulting in Map<K, int>, and then at some later time the remaining type parameter(s) may be specialized, such as to generate Map<int, int> or Map<long, int>.
    Type: Application
    Filed: April 21, 2015
    Publication date: October 22, 2015
    Inventors: Brian Goetz, John R. Rose, Alexander R. Buckley
  • Publication number: 20150301840
    Abstract: The loading or operation of a specialized class may trigger the specialization of other classes. A compiler may be configured to recognize dependency relationships between generic classes and to describe the classes in terms of the type variables of the triggering types (e.g., the types and/or type parameterizations) that trigger the specialization of classes based on the specialization of a first class. A compiler may include information, such as structural references, indicating dependency relationships between classes when generating class files. Thus, the class file may include information indicating that a class extends a class resulting from applying a specialization code generator to an argument. Loading a first class may trigger the loading of a second class described by a structural description such that a specializer (and/or class loader) may apply the structural description to generate and load the second class for the particular parameterization.
    Type: Application
    Filed: April 21, 2015
    Publication date: October 22, 2015
    Inventors: Brian Goetz, John R. Rose, Alexander R. Buckley
  • Publication number: 20150301825
    Abstract: The domain of genericity of an existing generic class may be expanded to include not just reference types, but also primitive and value types even though some members of the existing class do not support the expanded genericity. A subdivided version of the class may be created that includes a generic layer including abstract versions of class members and a reference-specific layer that including non-abstract versions of class members that are abstract in the generic layer. The subdivided version of the class may also include information that indicates to which layer a class member belongs. Problematic methods (e.g., methods that have built-in assumptions regarding the domain of genericity) may be moved into the second, reference-specific, layer, thereby retaining compatibility with classes that currently instantiate or reference those methods, while still allowing use within the expanded domain of genericity.
    Type: Application
    Filed: March 17, 2015
    Publication date: October 22, 2015
    Inventors: Brian Goetz, John R. Rose
  • Publication number: 20150301809
    Abstract: Wholesale replacement of specialized classes may involve the ability to replace the auto specialization of a generic class may not be used at all and instead, a completely different, hand-written, class when the class is specialized for particular type parameterizations, according to some embodiments. The replacement class may have the same interface as the generic or auto specialized version, but it may have a completely different representation and/or implementation. A runtime environment may load the alternate version of the class, based on information identifying the alternate version, whenever the particular specialization is instantiated. The runtime may not have to load the generic or auto specialized version of the class when using the alternate version of the class.
    Type: Application
    Filed: April 21, 2015
    Publication date: October 22, 2015
    Inventors: Brian Goetz, John R. Rose, Paul Govereau
  • Patent number: 8788766
    Abstract: A method and processor supporting architected instructions for tracking and determining set membership, such as by implementing Bloom filters are disclosed. The apparatus includes storage arrays (e.g., registers) and an execution core configured to store an indication that a given value is a member of a set, including by executing an architected instruction having an operand specifying the given value, wherein executing comprises applying a hash function to the value to determine an index into one of the storage arrays and setting a bit of the storage array corresponding to the index. An architected query instruction is later executed to determine if a query value is not a member of the set, including by applying the hash function to the query value to determine an index into the storage array and determining whether a bit at the index of the storage array is set.
    Type: Grant
    Filed: February 18, 2010
    Date of Patent: July 22, 2014
    Assignee: Oracle America, Inc.
    Inventors: John R. Rose, Lawrence A. Spracklen, Zoran Radovic
  • Patent number: 8712852
    Abstract: The present invention generally relates to a system and method for distributing a transaction instrument. The system includes the steps of: offering for sale, in a retail environment, the transaction instrument; selling a selected transaction instrument; communicating with the issuer of the transaction instrument via an internet accessible web site, and enabling the use of the transaction instrument. The transaction instrument may be, for example, an open pre-paid card. The distribution of the transaction instrument may also include the step of sending a message, through the web site, in substantially real time, causing the pre-paid transaction instrument to be funded but not activated until later through an interactive voice response system, for example. In another example, an associated transaction account may be funded and activated at the time of distribution. Furthermore, an issuer system may be suitably configured to leverage existing Travelers Cheque infrastructure for inventory and related processes.
    Type: Grant
    Filed: May 9, 2008
    Date of Patent: April 29, 2014
    Assignee: Sharecomm Limited Liability Company
    Inventors: Gennye Hannover Feldman, Elizabeth Anne Holt, Marc Rubner, John R. Rose, Nicole Milne Vollmer
  • Patent number: 8612930
    Abstract: Methods and apparatus for dynamic class reloading and versioning that allow developers to change and recompile classes and to have running programs adopt the new versions of the classes dynamically, without redeploying the application. A dynamic class reloading component detects if the environment supports dynamic class redefinition and uses it if supported but does not require it. As the component loads a managed class, it modifies the bytecode of the class and generates additional classes and interfaces to support type-safe class versioning. Unique names are generated for successive versions of a managed class. A separate interface may be generated for each distinct method name and signature implemented on managed classes. Each generated class may implement all the generated interfaces that correspond to its methods. The same class loader that would load each managed class without the component loads the component-generated classes and interfaces.
    Type: Grant
    Filed: January 30, 2009
    Date of Patent: December 17, 2013
    Assignee: Oracle America, Inc.
    Inventors: Timothy J. Quinn, John R. Rose
  • Patent number: 8070056
    Abstract: The present disclosure generally relates to a handheld point of sale system for distributing a transaction instrument. Such system may include a browser-based tool configured to facilitate distributing an open transaction instrument at the point of sale in association with purchase of the open transaction instrument by a consumer at the handheld point of sale system. The browser-based tool may also be configured to receive transaction information and to facilitate the distribution of the open transaction instrument by sending the transaction information from the browser-based tool to a host system, wherein the host system authorizes distribution of the open transaction instrument, funds and activates a transaction account associated with the open transaction instrument, and sends an authorization message to the browser-based tool.
    Type: Grant
    Filed: March 5, 2009
    Date of Patent: December 6, 2011
    Assignee: American Express Travel Related Services Company, Inc.
    Inventors: Gennye Hannover Feldman, Elizabeth Anne Holt, Marc Rubner, John R. Rose, Nicole Milne Vollmer
  • Publication number: 20110202725
    Abstract: A method and processor supporting architected instructions for tracking and determining set membership, such as by implementing Bloom filters. The apparatus includes storage arrays (e.g., registers) and an execution core configured to store an indication that a given value is a member of a set, including by executing an architected instruction having an operand specifying the given value, wherein executing comprises hashing applying a hash function to the value to determine an index into one of the storage arrays and setting a bit of the storage array corresponding to the index. An architected query instruction is later executed to determine if a query value is not a member of the set, including by applying the hash function to the query value to determine an index into the storage array and determining whether a bit at the index of the storage array is set.
    Type: Application
    Filed: February 18, 2010
    Publication date: August 18, 2011
    Inventors: John R. Rose, Lawrence A. Spracklen, Zoran Radovic
  • Patent number: 7900826
    Abstract: The present invention generally relates to a system and method for distributing a transaction instrument. The system includes the steps of: offering for sale, in a retail environment, the transaction instrument; selling a selected transaction instrument; communicating with the issuer of the transaction instrument via an internet accessible web site, and enabling the use of the transaction instrument. The transaction instrument may be, for example, an open pre-paid card. The distribution of the transaction instrument may also include the step of sending a message, through the web site, in substantially real time, causing the pre-paid transaction instrument to be funded but not activated until later through an interactive voice response system, for example. In another example, an associated transaction account may be funded and activated at the time of distribution. Furthermore, an issuer system may be suitably configured to leverage existing Travelers Cheque infrastructure for inventory and related processes.
    Type: Grant
    Filed: May 9, 2008
    Date of Patent: March 8, 2011
    Assignee: American Express Travel Related Services Company, Inc.
    Inventors: Gennye Hannover Feldman, Elizabeth Anne Holt, Marc Rubner, John R. Rose, Nicole Milne Vollmer
  • Patent number: 7783517
    Abstract: The present invention generally relates to a system and method for distributing a transaction instrument. The system includes the steps of: offering for sale, in a retail environment, the transaction instrument; selling a selected transaction instrument; communicating with the issuer of the transaction instrument via an internet accessible web site, and enabling the use of the transaction instrument. The transaction instrument may be, for example, an open pre-paid card. The distribution of the transaction instrument may also include the step of sending a message, through the web site, in substantially real time, causing the pre-paid transaction instrument to be funded but not activated until later through an interactive voice response system, for example. In another example, an associated transaction account may be funded and activated at the time of distribution. Furthermore, an issuer system may be suitably configured to leverage existing Travelers Cheque infrastructure for inventory and related processes.
    Type: Grant
    Filed: May 9, 2008
    Date of Patent: August 24, 2010
    Assignee: American Express Travel Related Services Company, Inc.
    Inventors: Gennye Hannover Feldman, Elizabeth Anne Holt, Marc Rubner, John R. Rose, Nicole Milne Vollmer
  • Publication number: 20100199259
    Abstract: Methods and apparatus for dynamic class reloading and versioning that allow developers to change and recompile classes and to have running programs adopt the new versions of the classes dynamically, without redeploying the application. A dynamic class reloading component detects if the environment supports dynamic class redefinition and uses it if supported but does not require it. As the component loads a managed class, it modifies the bytecode of the class and generates additional classes and interfaces to support type-safe class versioning. Unique names are generated for successive versions of a managed class. A separate interface may be generated for each distinct method name and signature implemented on managed classes. Each generated class may implement all the generated interfaces that correspond to its methods. The same class loader that would load each managed class without the component loads the component-generated classes and interfaces.
    Type: Application
    Filed: January 30, 2009
    Publication date: August 5, 2010
    Inventors: Timothy J. Quinn, John R. Rose
  • Publication number: 20090327087
    Abstract: The present invention generally relates to a system and method for distributing a transaction instrument. The system includes the steps of: offering for sale, in a retail environment, the transaction instrument; selling a selected transaction instrument; communicating with the issuer of the transaction instrument via an internet accessible web site, and enabling the use of the transaction instrument. The transaction instrument may be, for example, an open pre-paid card. The distribution of the transaction instrument may also include the step of sending a message, through the web site, in substantially real time, causing the pre-paid transaction instrument to be funded but not activated until later through an interactive voice response system, for example. In another example, an associated transaction account may be funded and activated at the time of distribution. Furthermore, an issuer system may be suitably configured to leverage existing Travelers Cheque infrastructure for inventory and related processes.
    Type: Application
    Filed: May 9, 2008
    Publication date: December 31, 2009
    Applicant: AMERICAN EXPRESS TRAVEL RELATED SERVICES COMPANY, INC.
    Inventors: Randy Beck, Gennye Hannover Feldman, Elizabeth Anne Holt, Sven Miller, Clyde Page, Marc Rubner, John R. Rose, Nicole Milne Vollmer
  • Publication number: 20090184162
    Abstract: The present invention generally relates to a system and method for distributing a transaction instrument. The system includes the steps of: offering for sale, in a retail environment, the transaction instrument; selling a selected transaction instrument; communicating with the issuer of the transaction instrument via an internet accessible web site, and enabling the use of the transaction instrument. The transaction instrument may be, for example, an open pre-paid card. The distribution of the transaction instrument may also include the step of sending a message, through the web site, in substantially real time, causing the pre-paid transaction instrument to be funded but not activated until later through an interactive voice response system, for example. In another example, an associated transaction account may be funded and activated at the time of distribution. Furthermore, an issuer system may be suitably configured to leverage existing Travelers Cheque infrastructure for inventory and related processes.
    Type: Application
    Filed: March 5, 2009
    Publication date: July 23, 2009
    Applicant: American Express Travel Related Services Company, Inc.
    Inventors: Randy Beck, Gennye Hannover Feldman, Elizabeth Anne Holt, Sven Miller, Clyde Page, Marc Rubner, John R. Rose, Nicole Milne Vollmer
  • Patent number: 7431208
    Abstract: The present invention generally relates to a system and method for distributing a transaction instrument. The system includes the steps of: offering for sale, in a retail environment, the transaction instrument; selling a selected transaction instrument; communicating with the issuer of the transaction instrument via an internet accessible web site, and enabling the use of the transaction instrument. The transaction instrument may be, for example, an open pre-paid card. The distribution of the transaction instrument may also include the step of sending a message, through the web site, in substantially real time, causing the pre-paid transaction instrument to be funded but not activated until later through an interactive voice response system, for example. In another example, an associated transaction account may be funded and activated at the time of distribution. Furthermore, an issuer system may be suitably configured to leverage existing Travelers Cheque infrastructure for inventory and related processes.
    Type: Grant
    Filed: February 5, 2007
    Date of Patent: October 7, 2008
    Assignee: American Express Travel Related Services Company, Inc.
    Inventors: Gennye Hannover Feldman, Elizabeth Anne Holt, Marc Rubner, John R. Rose, Nicole Milne Vollmer
  • Publication number: 20080215448
    Abstract: The present invention generally relates to a system and method for distributing a transaction instrument. The system includes the steps of: offering for sale, in a retail environment, the transaction instrument; selling a selected transaction instrument; communicating with the issuer of the transaction instrument via an internet accessible web site, and enabling the use of the transaction instrument. The transaction instrument may be, for example, an open pre-paid card. The distribution of the transaction instrument may also include the step of sending a message, through the web site, in substantially real time, causing the pre-paid transaction instrument to be funded but not activated until later through an interactive voice response system, for example. In another example, an associated transaction account may be funded and activated at the time of distribution. Furthermore, an issuer system may be suitably configured to leverage existing Travelers Cheque infrastructure for inventory and related processes.
    Type: Application
    Filed: May 9, 2008
    Publication date: September 4, 2008
    Applicant: AMERICAN EXPRESS TRAVEL RELATED SERVICES COMPANY, INC
    Inventors: Randy Beck, Gennye Hannover Feldman, Elizabeth Anne Holt, Sven Miller, Clyde Page, Marc Rubner, John R. Rose, Nicole Milne Vollmer
  • Publication number: 20080215449
    Abstract: The present invention generally relates to a system and method for distributing a transaction instrument. The system includes the steps of: offering for sale, in a retail environment, the transaction instrument; selling a selected transaction instrument; communicating with the issuer of the transaction instrument via an internet accessible web site, and enabling the use of the transaction instrument. The transaction instrument may be, for example, an open pre-paid card. The distribution of the transaction instrument may also include the step of sending a message, through the web site, in substantially real time, causing the pre-paid transaction instrument to be funded but not activated until later through an interactive voice response system, for example. In another example, an associated transaction account may be funded and activated at the time of distribution. Furthermore, an issuer system may be suitably configured to leverage existing Travelers Cheque infrastructure for inventory and related processes.
    Type: Application
    Filed: May 9, 2008
    Publication date: September 4, 2008
    Applicant: AMERICAN EXPRESS TRAVEL RELATED SERVICES COMPANY, INC.
    Inventors: Randy Beck, Gennye Hannover Feldman, Elizabeth Anne Holt, Sven Miller, Clyde Page, Marc Rubner, John R. Rose, Nicole Milne Vollmer