G06F9/4491

CLASS SPLITTING IN OBJECT-ORIENTED ENVIRONMENTS
20170139681 · 2017-05-18 ·

Embodiments of the present invention disclose a method, computer program product, and system for class splitting in object-oriented environments in which objects are created by classes. Data is analyzed, in response to generating an instance of an original class in a code component. Fields are separated into sets based on the code paths that access the fields. A split class is generated for a set of fields which shares a common interface with the original class. Cells are replaced in the code component to the original class with a split class.

CLASS SPLITTING IN OBJECT-ORIENTED ENVIRONMENTS
20170139683 · 2017-05-18 ·

Embodiments of the present invention disclose a method for class splitting in object-oriented environments in which objects are created by classes. Data is analyzed, in response to generating an instance of an original class in a code component. Fields are separated into sets based on the code paths that access the fields. A split class is generated for a set of fields, which shares a common interface with the original class. Cells are replaced in the code component to the original class with a split class.

TYPE INFERENCE OPTIMIZATION
20170131982 · 2017-05-11 ·

Operations include (a) identifying bounds corresponding to two or more inference variables corresponding to a nested method invocation context, (b) determining that resolution of a first inference variable can be determined as a function of a resolution of a second inference variable, (c) propagating bounds corresponding to the second inference variable from the nested method invocation context to an outer method invocation context without propagating bounds corresponding to the first inference variable, (d) resolving a constraint set to resolve the second inference variable, and (e) resolving the first inference variable based on the resolution of the second inference variable.

CREATING OPTIMIZED SHORTCUTS
20170090920 · 2017-03-30 ·

An embodiments of the invention may include a method, computer program product and computer system for optimizing computer programs. The embodiment may include a computing device that determines a program code of a computer program contains at least two consecutive method handles. The embodiment may determine that the at least two consecutive method handles can be optimized. The embodiment may optimize the at least two consecutive method handles. Optimizing the at least two consecutive method handles may include one or more of: replacing the at least two consecutive method handles with one or more different commands; and reordering the at least two consecutive method handles.

Creating optimized shortcuts

An embodiments of the invention may include a method, computer program product and computer system for optimizing computer programs. The embodiment may include a computing device that determines a program code of a computer program contains at least two consecutive method handles. The embodiment may determine that the at least two consecutive method handles can be optimized. The embodiment may optimize the at least two consecutive method handles. Optimizing the at least two consecutive method handles may include one or more of: replacing the at least two consecutive method handles with one or more different commands; and reordering the at least two consecutive method handles.