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: 20150301812Abstract: 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: ApplicationFiled: March 17, 2015Publication date: October 22, 2015Inventors: Brian Goetz, John R. Rose, Alexander R. Buckley
-
Publication number: 20150301837Abstract: 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: ApplicationFiled: March 17, 2015Publication date: October 22, 2015Inventors: Brian Goetz, John R. Rose
-
Publication number: 20150301808Abstract: 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: ApplicationFiled: April 21, 2015Publication date: October 22, 2015Inventors: Brian Goetz, John R. Rose, Alexander R. Buckley
-
Publication number: 20150301807Abstract: 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: ApplicationFiled: April 21, 2015Publication date: October 22, 2015Inventors: Brian Goetz, John R. Rose, Alexander R. Buckley
-
Publication number: 20150301840Abstract: 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: ApplicationFiled: April 21, 2015Publication date: October 22, 2015Inventors: Brian Goetz, John R. Rose, Alexander R. Buckley
-
Publication number: 20150301825Abstract: 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: ApplicationFiled: March 17, 2015Publication date: October 22, 2015Inventors: Brian Goetz, John R. Rose
-
Publication number: 20150301809Abstract: 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: ApplicationFiled: April 21, 2015Publication date: October 22, 2015Inventors: Brian Goetz, John R. Rose, Paul Govereau
-
Patent number: 8788766Abstract: 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: GrantFiled: February 18, 2010Date of Patent: July 22, 2014Assignee: Oracle America, Inc.Inventors: John R. Rose, Lawrence A. Spracklen, Zoran Radovic
-
Patent number: 8712852Abstract: 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: GrantFiled: May 9, 2008Date of Patent: April 29, 2014Assignee: Sharecomm Limited Liability CompanyInventors: Gennye Hannover Feldman, Elizabeth Anne Holt, Marc Rubner, John R. Rose, Nicole Milne Vollmer
-
Patent number: 8612930Abstract: 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: GrantFiled: January 30, 2009Date of Patent: December 17, 2013Assignee: Oracle America, Inc.Inventors: Timothy J. Quinn, John R. Rose
-
Patent number: 8070056Abstract: 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: GrantFiled: March 5, 2009Date of Patent: December 6, 2011Assignee: American Express Travel Related Services Company, Inc.Inventors: Gennye Hannover Feldman, Elizabeth Anne Holt, Marc Rubner, John R. Rose, Nicole Milne Vollmer
-
Publication number: 20110202725Abstract: 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: ApplicationFiled: February 18, 2010Publication date: August 18, 2011Inventors: John R. Rose, Lawrence A. Spracklen, Zoran Radovic
-
Patent number: 7900826Abstract: 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: GrantFiled: May 9, 2008Date of Patent: March 8, 2011Assignee: American Express Travel Related Services Company, Inc.Inventors: Gennye Hannover Feldman, Elizabeth Anne Holt, Marc Rubner, John R. Rose, Nicole Milne Vollmer
-
Patent number: 7783517Abstract: 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: GrantFiled: May 9, 2008Date of Patent: August 24, 2010Assignee: American Express Travel Related Services Company, Inc.Inventors: Gennye Hannover Feldman, Elizabeth Anne Holt, Marc Rubner, John R. Rose, Nicole Milne Vollmer
-
Publication number: 20100199259Abstract: 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: ApplicationFiled: January 30, 2009Publication date: August 5, 2010Inventors: Timothy J. Quinn, John R. Rose
-
Publication number: 20090327087Abstract: 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: ApplicationFiled: May 9, 2008Publication date: December 31, 2009Applicant: 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: 20090184162Abstract: 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: ApplicationFiled: March 5, 2009Publication date: July 23, 2009Applicant: 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: 7431208Abstract: 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: GrantFiled: February 5, 2007Date of Patent: October 7, 2008Assignee: American Express Travel Related Services Company, Inc.Inventors: Gennye Hannover Feldman, Elizabeth Anne Holt, Marc Rubner, John R. Rose, Nicole Milne Vollmer
-
Publication number: 20080215448Abstract: 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: ApplicationFiled: May 9, 2008Publication date: September 4, 2008Applicant: AMERICAN EXPRESS TRAVEL RELATED SERVICES COMPANY, INCInventors: Randy Beck, Gennye Hannover Feldman, Elizabeth Anne Holt, Sven Miller, Clyde Page, Marc Rubner, John R. Rose, Nicole Milne Vollmer
-
Publication number: 20080215449Abstract: 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: ApplicationFiled: May 9, 2008Publication date: September 4, 2008Applicant: 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