Object Oriented Patents (Class 717/116)
  • Patent number: 8341608
    Abstract: A cross-platform toolbar and method thereof is disclosed. The toolbar includes a toolbar render object defining at least user interface elements of the cross-browser toolbar; a script file defining at least event handlers associated with the user interface elements; toolbar libraries including at least application programming interfaces (APIs) and script files supporting a specific web browser type; and a unique dynamic-link library (DLL) file assigned with the toolbar libraries and the script file.
    Type: Grant
    Filed: November 13, 2008
    Date of Patent: December 25, 2012
    Assignee: Visicom Media, Inc.
    Inventor: Miguel Enrique Cepero Gonzalez
  • Patent number: 8336037
    Abstract: Client Native method Interface (CNI) minimizing eXtensible Mark-up Language (XML) parsing is provided using array pair data structures. An empty array pair is passed to an engine from client code via a CNI call. The engine parses the XML document and fills the array pair with fixed width elements. The filled array pair is passed back to client code. The client code iterates through the elements in the array pair and invokes the appropriate handlers or builds appropriate tree objects for Document Object Model parsing. Thus, one CNI call passes the empty array pair from client code to the engine, and the filled array pair is returned from the engine to client code. Individual sets of CNI calls for each element are avoided, minimizing the number of CNI calls. Further, since elements in the array pair are of fixed width, they can be processed more efficiently by the client code.
    Type: Grant
    Filed: May 16, 2007
    Date of Patent: December 18, 2012
    Inventor: Richard A. Ross
  • Patent number: 8332812
    Abstract: A method of exchanging data among software components includes acquisition by each software component of all the data that is to be provided by another software component, from a predetermined software component. Each software component delivers all data that is to be provided by it to another software component, to the predetermined software component. Providing and acquiring of all data is performed according to a predetermined standard, according to which the data comprises values and attributes. The respective data values are assigned to attributes, and semantically identical data values are assigned to the same attribute and are made distinguishable from each other by respective hierarchical information. A software component that delivers data to or acquires data from the predetermined software component, receives the respective hierarchical information from another software component. Acquiring and providing data by a software component includes transferring the respective hierarchical information.
    Type: Grant
    Filed: November 21, 2007
    Date of Patent: December 11, 2012
    Assignee: tangro software components GmbH
    Inventor: Andreas Schumann
  • Patent number: 8332813
    Abstract: A service re-factoring method and system. The method includes selecting by a computing system, a first service comprising a first name. The computing system receives a second name for a second service to be generated from the first service. The computing system executes a service refactoring software application, adjusts a granularity of the first service, and generates the second service. The computing system retrieves first traceability links associated with the first service and a first value associated with a first service identification technique. The first traceability links are created within the second service. The computing system generates a second value associated with a second service identification technique. The first service, the first name, and the first value are removed from the computing system. The computing system stores the second service, the second name, the second value, and the first traceability link.
    Type: Grant
    Filed: December 11, 2008
    Date of Patent: December 11, 2012
    Assignee: International Business Machines Corporation
    Inventors: Ali P. Arsanjani, Ahamed Jalaldeen, Siddharth Purohit
  • Patent number: 8327323
    Abstract: A method of automatically defining a new class in a class hierarchy includes creating a descendent class that descends from one or more specified ancestor classes; sequentially analyzing each class along each inheritance path from the specified ancestor classes to a specified similar class to identify each class item in each class that is not selected from the specified ancestor classes; storing a respective pointer for each class item identified in each class that is not inherited by the class referencing the class item and associated with the class; storing a respective pointer for each class item identified in each class that is inherited and redefined by the class referencing the class item and being associated with the class if a pointer referencing the class item is not already stored; and copying each class item referenced by a stored pointer to the descendent class.
    Type: Grant
    Filed: December 8, 2008
    Date of Patent: December 4, 2012
    Assignee: International Business Machines Corporation
    Inventors: Karen Holtz, Eitan Marcus, Ronny Morad
  • Patent number: 8327327
    Abstract: A method for statically checking an object-oriented computer program module includes the step of identifying objects within a computer program module, at least one of the objects having a plurality of references thereto, possibly from multiple clients. A discipline of permissions is imposed on the objects identified within the computer program module. The permissions enable tracking, from among a discrete set of changeable states, a subset of states each object might be in. A determination is made regarding whether the imposed permissions are violated by a potential reference to any of the identified objects. The results of the determination are output to a user.
    Type: Grant
    Filed: March 21, 2008
    Date of Patent: December 4, 2012
    Assignee: Carnegie Mellon University
    Inventors: Kevin M. Bierhoff, Jonathan Aldrich
  • Patent number: 8321847
    Abstract: A device receives selection of a function category associated with a dynamically-type programming language, receives selection of a function associated with the selected function category, dynamically generates one or more function signatures associated with the selected function, and stores at least a subset of the one or more function signatures in a memory or displays at least a subset of the one or more function signatures to a user.
    Type: Grant
    Filed: May 17, 2007
    Date of Patent: November 27, 2012
    Assignee: The MathWorks, Inc.
    Inventors: Christopher F. Garvin, Roy Lurie
  • Patent number: 8321853
    Abstract: Aspects of the subject matter described herein relate to type and property definition support for software. In aspects, new types can be added to an application model after the software has been created without changing the software. After software is created and embodied in computer code, a new type definition may be received by a user type service. The user type service may then place the new type definition in a data store in which other types native to the software are located. The software may then use the new type definitions and properties associated therewith in queries and in user interfaces provided by the software.
    Type: Grant
    Filed: May 11, 2007
    Date of Patent: November 27, 2012
    Assignee: Microsoft Corporation
    Inventors: Jeffrey R. Currier, Alexander W. DeNeui
  • Patent number: 8321834
    Abstract: A method of generating a tool for merging customizations made to a first version of a software artifact when migrating to a second version includes instantiating a mapping element for each top-level element in a first code set that does not have a complementary element in a second code set; requesting and receiving merge instructions for each top-level element for which merge instructions are not provided in the corresponding mapping element; determining whether the merge instructions for each top-level element for which merge instructions are provided require that customizations be merged into the second code set; determining whether the merge instructions for each top-level element set that requires customizations to be merged are valid; requesting and receiving merge instructions for each top-level element for which the merge instructions are not valid; and storing the merge instructions received for each top-level element in the corresponding mapping element.
    Type: Grant
    Filed: September 25, 2008
    Date of Patent: November 27, 2012
    Assignee: International Business Machines Corporation
    Inventors: Bruce R Baker, Walfrey Ng, Chenfei Song, Yu Yuan
  • Patent number: 8316346
    Abstract: A method and system for selecting a technology to implement a service integration. Functional and non-functional service requirements are received. Technology preference relative weights for a pre-defined set of technologies and requirement relative weights for the requirements are received. Responses are received. The responses are associated with the requirements and with the requirement relative weights in a one-to-one correspondence. The responses are associated with the technology relative weights in a many-to-one correspondence. Each response indicates a characteristic that satisfies a requirement. A technology for implementing the service integration is selected from the pre-defined set of technologies based on the technology preference relative weights and the requirement relative weights.
    Type: Grant
    Filed: November 6, 2007
    Date of Patent: November 20, 2012
    Assignee: International Business Machines Corporation
    Inventor: Vishwanath Ganapathy
  • Patent number: 8316350
    Abstract: A system and method of interface visioning to improve extendibility and flexibility in modular software design. A first super class implements a first interface. A second super class implements both a first interface and a second interface. Each super class has a unique version designation. An access class is instantiated when a feature using an interface is requested. The access class identifies from the feature the version designation and provides access to the appropriate interface through either the first super class or the second super class.
    Type: Grant
    Filed: November 20, 2008
    Date of Patent: November 20, 2012
    Assignee: SAP Aktiengesellschaft
    Inventor: Oliver Bendig
  • Patent number: 8307350
    Abstract: A multi level virtual function table uses a hierarchy of chunks or segments of virtual function tables to identify methods for a particular class. At least one level of indirection pointers may point to individual virtual function table chunks, which may be shared by multiple classes. In some embodiments, fixed size chunks of virtual function tables may be used, other embodiments may use variable sized chunks of virtual function tables. In just in time compiled code, virtual function tables may be limited to sharing across parent and child classes, while in pre-compiled code, more complex sharing may be used.
    Type: Grant
    Filed: January 14, 2009
    Date of Patent: November 6, 2012
    Assignee: Microsoft Corporation
    Inventor: David J. Hiniker
  • Patent number: 8296669
    Abstract: In one embodiment, a technique for controlling one or more devices within a physical room of a structure is provided. One or more devices in the structure are coupled, either directly or indirectly, to a programmable multimedia controller configured to issue control commands which, when implemented, change the state of the devices. A virtual room-based user interface is displayed on a display screen. The virtual room-based user interface may include one or more virtual rooms, each virtual room including a substantially photo-realistic depiction of a portion of the structure, including substantially photo-realistic depictions of one or more devices located within the portion of the structure. In response to the selection of a particular substantially photo-realistic visual depiction, the programmable multimedia controller may issue control commands which, when implemented, change the state of a particular device. The appearance of the particular virtual room may be updated to reflect the changed state.
    Type: Grant
    Filed: June 2, 2010
    Date of Patent: October 23, 2012
    Assignee: Savant Systems, LLC
    Inventors: Robert P. Madonna, Nicholas J. Cipollo
  • Patent number: 8296730
    Abstract: When objects are called by a program written in a strongly-typed language using an interface written in a loosely-typed manner, incompatibilities between the programming languages can cause problems. Extension methods can simplify the interface between objects in an object model and a program written in a strongly-typed programming language by providing method overloads that accept strongly-typed parameters. Extension methods are provided that use method overloads that accept strongly-typed parameters, improving type safety by allowing the compiler to enforce type safety rather than relying on type checking at runtime. Nullable types and object initialization may be used to provide strongly-typed optional parameters. Extension methods can be used to support parameterized properties and to support class indexers, enabling query of collections of in-memory objects.
    Type: Grant
    Filed: March 12, 2008
    Date of Patent: October 23, 2012
    Assignee: Microsoft Corporation
    Inventors: David Andrew Whitechapel, Vladimir Morozov, Phillip Michael Hoff
  • Patent number: 8291393
    Abstract: A computer implemented method for performing inlining in a just-in-time compiler. Compilation of a first code of a program is begun. The first code is one of an interruptible code and a non-interruptible code. A try region is established around a second code of the program to form a wrapped second code. The try region is a boundary between interruptible and non-interruptible code such that a third code that modifies an observable state of the program cannot be moved across the boundary. The second code is, relative to the first code, the other of the interruptible code and the non-interruptible code. The wrapped second code is inlined with the first code during compilation. Compilation of the first code is completed to form a resultant code. The resultant code is stored.
    Type: Grant
    Filed: August 20, 2007
    Date of Patent: October 16, 2012
    Assignee: International Business Machines Corporation
    Inventors: Patrick G. Gallop, Derek Bruce Inglis, Mark Graham Stoodley
  • Patent number: 8290988
    Abstract: The present invention provides a Global Information Architecture (GINA) to create an object oriented, software-based modeling environment for the modeling of various data sources and allowing queries and transactions across those sources. The modeling environment is described in itself. Introspection is achieved since the model is described in the model, and early validation that the infrastructure is correct is established in that the infrastructure must execute against itself. Object traversal is accomplished via vectors that describe how an object can be reached from other objects. Objects are linked by describing what type of object (data source) is to be reached and on the basis of what possible attribute values of that object.
    Type: Grant
    Filed: November 20, 2009
    Date of Patent: October 16, 2012
    Assignee: XSLENT, LLC
    Inventors: Frank Busalacchi, David Tinsley, Wesley Skinner, Paul Bressler, Eric Yarbrough
  • Patent number: 8291386
    Abstract: A process and system for interactive debugging of a computer program, is provided. One implementation involves providing a class for an object oriented computer program capable of executing on a computer system, the class having class methods defining a semantic field of the class; automatically monitoring the class during execution of the program, and leveraging said class methods by executing the class methods upon object-typed variables to obtain a pseudo-field value; and presenting the pseudo-field value along with fields of the said object-typed variables, on a user interface for debugging purposes.
    Type: Grant
    Filed: October 7, 2008
    Date of Patent: October 16, 2012
    Assignee: International Business Machines Corporation
    Inventor: Maxime Daniel
  • Patent number: 8286129
    Abstract: A programming element is provided that defines model attributes in response to mode change events in a graphical modeling environment. Such definition may involve any signal attribute such as dimensions, data types, complexity and sample times. Events that trigger definition of model attributes may be explicit signaling events generated by other elements, elements within the block diagram programming environment, and elements external from the environment. Implicit events may also trigger definition of model attributes, such as a change of attribute in an input signal.
    Type: Grant
    Filed: October 16, 2008
    Date of Patent: October 9, 2012
    Assignee: The MathWorks, Inc.
    Inventors: Ramamurthy Mani, Dong Jia, Haihua Feng, Alongkrit Chutinan, Qu Zhang, Vijay Raghavan
  • Patent number: 8281299
    Abstract: The disclosed system provides a functional programming construct that allows convenient modular run-time nonstandard interpretation via reflection on closure environments. This construct encompasses both the ability to examine the contents of a closure environment and to construct a new closure with a modified environment. Examples of this powerful and useful construct support such tasks as tracing, security logging, sandboxing, error checking, profiling, code instrumentation and metering, run-time code patching, and resource monitoring. It is a non-referentially-transparent mechanism that reifies the closure environments that are only implicit in higher-order programs. A further example provides a novel functional-programming language that supports forward automatic differentiation (AD).
    Type: Grant
    Filed: November 13, 2007
    Date of Patent: October 2, 2012
    Assignee: Purdue Research Foundation
    Inventors: Jeffrey Mark Siskind, Barak Avrum Pearlmutter
  • Patent number: 8281282
    Abstract: According to one embodiment of the invention a computer-readable media stores code that is operable to be executed on a processor. The code includes a JAVA class having objects with associated attributes and also having at least one method. The at least one method is operable, when executed on the processor, to search the objects across any attribute of the objects.
    Type: Grant
    Filed: April 20, 2006
    Date of Patent: October 2, 2012
    Assignee: CA, Inc.
    Inventor: Michael Robert Smith
  • Patent number: 8281285
    Abstract: A system and method are disclosed for history management a plurality of objects within an application, wherein each of the plurality includes at least a software method for saving the object's state and a software method for loading the object's state and a history manager function including a software method for recording an application interaction state for each user interaction with the application, wherein the application interaction state comprises the object's state for each of the plurality of objects at a time of the each user interaction with the application, wherein the user selects a desired one of the application interaction states to set the application to a desired one of the user interactions.
    Type: Grant
    Filed: May 18, 2009
    Date of Patent: October 2, 2012
    Assignee: Adobe Systems Incorporated
    Inventor: Glenn Warren Ruehle
  • Patent number: 8276119
    Abstract: Replacing an object in an object oriented model in a computer system, by interrogating the model to retrieve information defining the relationships between the object to be replaced and other components of the model is described. These relationship definitions are then used to configure the replacement object within the model so as to assume corresponding relationships with the other components. There may be established as a part of the model functions to detect changes to the relationships between objects belonging to the model, and recording the changes in a registry. This registry is then interrogated to retrieve relationship definitions necessary to replace an object.
    Type: Grant
    Filed: October 24, 2006
    Date of Patent: September 25, 2012
    Assignee: International Business Machines Corporation
    Inventor: Ehab El-Kersh
  • Publication number: 20120240102
    Abstract: Replacing an object in an object oriented model in a computer system, by interrogating the model to retrieve information defining the relationships between the object to be replaced and other components of the model is described. These relationship definitions are then used to configure the replacement object within the model so as to assume corresponding relationships with the other components. There may be established as a part of the model functions to detect changes to the relationships between objects belonging to the model, and recording the changes in a registry. This registry is then interrogated to retrieve relationship definitions necessary to replace an object.
    Type: Application
    Filed: June 4, 2012
    Publication date: September 20, 2012
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventor: Ehab El-Kersh
  • Patent number: 8271965
    Abstract: A method and apparatus to guarantee type safety in multithreaded programs, and to guarantee initialization safety in well-behaved multithreaded programs. A plurality of bytecodes representing a program are received and examined to identify bytecodes defining object creation operations and object initialization operations. Upon execution of the plurality of bytecodes, memory barrier operations are performed subsequent to the performance of both the object creation operations and the object initialization operations. This guarantees type safety, and further guarantees initialization safety if the program is well-behaved. Optimization algorithms may also be applied in the compilation of bytecodes to improve performance.
    Type: Grant
    Filed: October 3, 2008
    Date of Patent: September 18, 2012
    Assignee: International Business Machines Corporation
    Inventor: Zhong Liang Wang
  • Patent number: 8271938
    Abstract: Mechanisms that allow frameworks significant flexibility in varying the library of common base classes in a manner that better suits the domain of applications served by the framework. Instead of providing the base class library, the runtime provides a data contract for the data structure of each base class. The frameworks can then define each base class in a custom way so long as the data contract is honored. Thus, for example, the framework may provide custom framework-specific methods and/or properties as is appropriate for the framework. Another framework might define the base classes in a different way.
    Type: Grant
    Filed: September 3, 2008
    Date of Patent: September 18, 2012
    Assignee: Microsoft Corporation
    Inventors: Patrick H. Dussud, Scott D. Mosier, Peter F. Sollich, Frank V. Peschel-Gallee, Raja Krishnaswamy, Simon J. Hall, Madhusudhan Talluri, Rudi Martin, Michael M. Magruder, Andrew J. Pardoe
  • Patent number: 8266586
    Abstract: A unified programming environment allows application developers to work with declarative, procedural and service model based logic. In one aspect, instructions on a computer readable medium include at least one of a declarative logic module adapted to define an object and a procedural logic module adapted to define an object. A service model based logic module is adapted to define actions to be performed on the object with a reference to said at least one of the declarative and procedural logic module.
    Type: Grant
    Filed: October 29, 2004
    Date of Patent: September 11, 2012
    Assignee: Microsoft Corporation
    Inventor: Kuansan Wang
  • Patent number: 8250523
    Abstract: It may be advantageous to facilitate communication between two types of source code. For example, a wrapper may be generated to translate between managed source code and native source code. Current techniques may translate a single type of native source code into a managed binary wrapper. However, as provided herein, a managed source code wrapper may be generated based upon a variety of native source code formats. A native binary descriptor describing a set of native code may be received. A provider may be selected based upon the format of the set of native code. The provider may be executed upon the native binary descriptor to produce a common native binary description. A managed source code wrapper may be generated based upon the common native binary description. Because the managed source code wrapper may be in a textual source code format, a developer may easily maintain and/or customize the wrapper.
    Type: Grant
    Filed: January 29, 2009
    Date of Patent: August 21, 2012
    Assignee: Microsoft Corporation
    Inventors: Matthew Hall, Michael Fanning
  • Patent number: 8250528
    Abstract: The subject invention pertains to a system and method of extending programming languages to enable static inheritance. In particular, static subclasses can be defined which extend class functionality and/or behaviors without extending base class state. The subclasses can be specified to include static fields as well as static or instance methods and/or properties that provide a more specific interpretation of an object without extending the state thereof. Furthermore, a static subclass can be specified to provide for type aliasing. Casting is also enabled in both directions between base class type and derived class type in a convenient manner without run-time performance penalties. According to one aspect of the invention, the disclosed systems and methods can be employed to create specific programmatic context, for instance for accessing, manipulating, and type checking external data (e.g., XML).
    Type: Grant
    Filed: December 15, 2004
    Date of Patent: August 21, 2012
    Assignee: Microsoft Corporation
    Inventors: Henricus Johannes Maria Meijer, Sergey Dubinets, Yan V. Leshinsky, Evgeny N. Veselov
  • Patent number: 8245186
    Abstract: Various technologies and techniques are disclosed for offering and applying source code modifications based upon a context of a user in a development environment. For example, code snippets can be offered to the user and customized programmatically. A code editor accepts user input comprising source code. Code snippets of sample source code are stored in a data store. A code completion tool monitors user actions and detects a triggering action in the monitored user actions. A code snippet associated with the triggering action is identified. An option is offered representing the code snippet. In response to user selection of the option, the associated code snippet is inserted into the code editor and is automatically customized based upon the user context. As another example, aspect-oriented source code transformations are offered based upon the user context. As yet another example, solutions to commonly problematic tasks are offered based upon the user context.
    Type: Grant
    Filed: April 3, 2008
    Date of Patent: August 14, 2012
    Assignee: Microsoft Corporation
    Inventors: Izydor Gryko, Timothy A. Wagner
  • Patent number: 8239830
    Abstract: A system for a portal architecture may include a model service component. The model service component may be arranged to connect a presentation device to a business manager component. An aspect oriented architecture may be associated with the model service component. A service oriented architecture may be associated with the model service component, the service oriented architecture being arranged orthogonal to the aspect oriented architecture.
    Type: Grant
    Filed: February 8, 2007
    Date of Patent: August 7, 2012
    Assignee: Accenture Global Services Limited
    Inventors: Nicola Ionfrida, Paolo Cardinale
  • Patent number: 8234624
    Abstract: A development system for developing new peripheral software code for new peripheral hardware that will be used in a new integrated system. The development system includes a legacy, or preexisting, integrated system substantially the same as the new integrated system. A model of the new peripheral hardware is made. Each I/O register of the model is mapped into memory-mapped I/O space. Development code corresponding to the new peripheral software code is executed on the preexisting hardware so as to interact with the model via the memory-mapped I/O space. In one embodiment, the model is executed as an embedded model on the preexisting integrated system. In another embodiment, the model is executed as a non-embedded model on a hardware descriptive language simulator.
    Type: Grant
    Filed: January 25, 2007
    Date of Patent: July 31, 2012
    Assignee: International Business Machines Corporation
    Inventors: Robert J. Devins, Nagashyamala R. Dhanwada
  • Patent number: 8225271
    Abstract: Methods and apparatus for configuring process, environmental, industrial and other control systems generate and/or utilize models representing configurations of control systems and/or the systems controlled by them. Records of changes to the models or the configurations represented by them are maintained, thereby, for example, providing bases for determining current states, prior states and histories of changes. Objects in the model have characteristics, such as an object type characteristic and an area characteristic. Users can have corresponding permissions. A security mechanism apparatus controls access by users to the objects. Composite objects are defined by definition objects and are displayed in encapsulated or expanded formats. Objects can include an edit control type identifier that determines how they are presented for editing. Functionality responds to user commands by transferring characteristics of a first object depicted by the graphical user interface to a second object.
    Type: Grant
    Filed: November 6, 2008
    Date of Patent: July 17, 2012
    Assignee: Invensys Systems, Inc.
    Inventors: Keith Eldridge, Brian Mackay, Mark Johnson, Scott Volk, Kenneth A. Burke, Paul Meskonis, Robert Hall, Steven Dardinski
  • Patent number: 8225294
    Abstract: One embodiment of the present invention provides a system for generating executable code. During operation, the system receives source code, wherein the source code can include declarations for types and operations, wherein the type declarations may be parameterized, and wherein the source code may specify subtyping relationships between declared types. Next, the system compiles or interprets the source code to produce executable code, wherein the type parameters may be instantiated by different types during execution, and wherein the result of executing operations may depend upon the instantiations of the type parameters. While compiling or interpreting the source code, the system checks the types and operations in the source code to ensure that the executable code generated is type-safe, and hence will not generate type errors during execution.
    Type: Grant
    Filed: April 27, 2006
    Date of Patent: July 17, 2012
    Assignee: Oracle America, Inc.
    Inventors: Sukyoung Ryu, Eric E. Allen, Victor M. Luchangco, Joseph J. Hallett, III, Samuel Y. Tobin-Hochstadt
  • Patent number: 8219968
    Abstract: Designing a computer program includes accessing invariant domain rules and displaying variable business rules. One or more business rules are selected in response to a user selection and are customized. The business rules are associated with a procedure, and the domain rules are associated with the procedure. A model representing the procedure is displayed, and a code corresponding to the procedure is generated to design a computer program.
    Type: Grant
    Filed: July 17, 2003
    Date of Patent: July 10, 2012
    Assignee: Raytheon Company
    Inventor: Wayne Patrick O'Brien
  • Publication number: 20120174063
    Abstract: Disclosed are methods and systems for generating resource with URI. The methods and systems involve receiving a request for processing a data, the request including an uniform resource identifier (URI), based on the URI, sending the request to an associated resource handler, instantiating set of data resources associated with the URI by calling a resource factory and processing the request by passing the set of data resources to a specific application programming interface for presenting instantiated set of data resources.
    Type: Application
    Filed: December 30, 2010
    Publication date: July 5, 2012
    Inventors: LUAN O'CARROLL, Qiang Han
  • Publication number: 20120167043
    Abstract: Disclosed is a method to track allocation of a plurality of objects in a heap. A data processing system, during an object allocation, prevents an object from being moved to another place in memory or being deleted. The data processing system prevents such activity concurrently with garbage collection on a second object not currently being allocated. The data processing system notifies a profiler of object information based on the object allocation via a callback function, wherein object information is a one-to-one mapping of the object address. The data processing system revives garbage collector processing of the object.
    Type: Application
    Filed: March 1, 2012
    Publication date: June 28, 2012
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Graham A. Chapman, Scott T. Jones, Maciek Klimkowski, Frank E. Levine, Milena Milenkovic
  • Patent number: 8209665
    Abstract: Topics in source code can be identified using Latent Dirichlet Allocation (LDA) by receiving source code, identifying domain specific keywords from the source code, generating a keyword matrix, processing the keyword matrix and the source code using LDA, and outputting a list of topics. The list of topics is output as collections of domain specific keywords. Probabilities of domain specific keywords belonging to their respective topics can also be output. The keyword matrix comprises weighted sums of occurrences of domain specific keywords in the source code.
    Type: Grant
    Filed: September 17, 2008
    Date of Patent: June 26, 2012
    Assignee: Infosys Limited
    Inventors: Girish Maskeri Rama, Kenneth Heafield, Santonu Sarkar
  • Patent number: 8205193
    Abstract: The invention relates to a computer-implemented method of updating a virtual machine class file, including the steps of identifying a class file for execution by a virtual machine, accessing the class file in a class file repository, and downloading the class file to a file system associated with the virtual machine.
    Type: Grant
    Filed: June 11, 2001
    Date of Patent: June 19, 2012
    Assignee: Hewlett-Packard Development Company, L.P.
    Inventors: William Hertling, Michael D Whitmarsh
  • Patent number: 8200807
    Abstract: This invention is directed to a method for use in a state diagramming environment on a computing device. The method includes obtaining a state diagram via the environment and processing a first event for the state diagram via the environment. The method also includes triggering a second event, wherein the triggering is based on the first event. The method further includes broadcasting the second event in a non-blocking fashion that allows the first event to continue being processed.
    Type: Grant
    Filed: August 31, 2006
    Date of Patent: June 12, 2012
    Assignee: The MathWorks, Inc.
    Inventors: Vijay Raghavan, Pieter J. Mosterman
  • Patent number: 8196091
    Abstract: Computer method and apparatus provides lightweight stereotypes in a programming model. An alternative to applied profiles is disclosed. A keyword list or list of strings is recorded as an annotation to a model element. The keywords are indicative of applied stereotypes of the model element, where the stereotypes are empty or are used as labels. The list of strings effectively augments the collection of applied stereotypes of the model element.
    Type: Grant
    Filed: September 17, 2008
    Date of Patent: June 5, 2012
    Assignee: International Business Machines Corporation
    Inventors: Steve John Gutz, Kenneth Earle Hussey, Daniel Donat Leroux
  • Patent number: 8196126
    Abstract: Systems and methods are provided for generating high-level program code of a rule-based application for interpreting and executing business rules. In one exemplary embodiment, a method is provided that comprises retrieving high-level program code capable of performing the functionality of a business rule called by the rule-based application, wherein the high-level program code includes an annotated set of instructions for the dynamic generation of generated code. The method may also comprise processing the annotated set of instructions with a generator component to create generated code from the high-level program code, mapping the generated code to the called business rule, and utilizing the generated code to execute the functionality of the called business rule.
    Type: Grant
    Filed: October 29, 2007
    Date of Patent: June 5, 2012
    Assignee: SAP AG
    Inventor: Carsten Ziegler
  • Patent number: 8196112
    Abstract: Widgets or other code modules for applications written in structured languages such as HTML can be tested advantageously by separating the extraction and validation logic. To test the functionality of a widget in response to an action, widget features of interest are identified. Context and feature nodes for these features are extracted from a page tree structure to generate a property vector that is representative of the state of the widget. After performing the action, context nodes for the features are attached to the new page tree for the newly loaded page, and an observed property vector is generated that represents the state of the widget after the action. The previous property vector is used with updated state information to generate an expected property vector. The observed property vector is compared with the expected property vector, and if the vectors match the validation is claimed to be successful.
    Type: Grant
    Filed: February 15, 2008
    Date of Patent: June 5, 2012
    Assignee: Amazon Technologies, Inc.
    Inventor: Kemal Oral Cansizlar
  • Patent number: 8191040
    Abstract: An application program interface (API) provides a set of functions that make available support for processing XML documents for application developers who build Web applications on Microsoft Corporation's .NET™ platform.
    Type: Grant
    Filed: January 12, 2007
    Date of Patent: May 29, 2012
    Assignee: Microsoft Corporation
    Inventors: Anders Hejlsberg, Daniel Dedu-Constantin, Erik B. Christensen, Keith W. Ballinger, Mark W. Fussell, Neetu Rajpal, Nithyalakshmi Sampathkumar, Omri Gazitt, Stefan H. Pharies, William A. Adams, Yan Leshinsky, Chia-Hsun Chen, Christopher J. Lovett
  • Patent number: 8191042
    Abstract: Declarative definition and composition of activities of a continuation based runtime. When formulating such a declarative activity of a continuation-based runtime, the activity may be formulated in accordance with a declarative activity schema and include a properties portion that declaratively defines one or more interface parameters of the declarative activity, and a body portion that declaratively defines an execution behavior of the declarative activity. The declarative activities may be hierarchically structured such that a parent declarative activity may use one or more child activities to define its behavior, where one or more of the child activities may also be defined declaratively.
    Type: Grant
    Filed: April 1, 2008
    Date of Patent: May 29, 2012
    Assignee: Microsoft Corporation
    Inventors: Edmund Samuel Victor Pinto, Kenneth David Wolf, Geoffrey M. Kizer, Donald F. Box
  • Patent number: 8191052
    Abstract: A method and apparatus for producer graph oriented programming and execution. According to one aspect of the invention, a runtime is provided that interprets producer dependency declarations for methods. The producer dependency declarations identify at run time a set of zero or more producers, where a producer is a runtime instantiatable construct that includes at least an instance and a method associated with that instance. The runtime automatically generates and executes, responsive to receiving a designation of a producer of interest whose method has a producer dependency declaration, a producer graph. The producer graph initially includes the producer of interest and is generated, from the producer of interest to source producers, through instantiation of producers based on the producer dependency declarations of the methods of the producers already in the producer graph. The runtime sequences the execution of the producers in the producer graph as by the producer graph.
    Type: Grant
    Filed: December 1, 2006
    Date of Patent: May 29, 2012
    Assignee: Murex S.A.S.
    Inventors: Fady Chamieh, Elias Eddé
  • Publication number: 20120131551
    Abstract: An object oriented programming environment with an improved object, referred to herein as a “peculiar object”, which among other things, facilitates the implementation of a defined transition between object types is described. A peculiar object includes a programming construct referred to herein as a selector, which maps a set of object behaviors to a set of values for a special type of attribute, referred to herein as a “peculiar attribute.” As such, as the value of a peculiar attribute changes, so too does the type or state of the peculiar object. With each transition of the object from one type or state to another, the available behaviors dynamically change.
    Type: Application
    Filed: November 22, 2010
    Publication date: May 24, 2012
    Applicant: SAP AG
    Inventor: Albert Zedlitz
  • Patent number: 8181152
    Abstract: A method for designing object-oriented software for implementing portlets, and an associated computer system and computer program product. The portlets are available to a user of the software who clicks on a link of a first page to identify an action object of an Action class and a state object of a State class. The software includes the State class, the Action class, and program code. The State class includes a method for displaying a view of a page. The Action class includes an actionPerformed method for performing an action and a setState method for setting the state object into the session. The program code is adapted to execute: the actionPerformed method of the action object to perform the action; the setState method of the action object to set the state object; and the method of the state object to display a view of a second page.
    Type: Grant
    Filed: May 14, 2007
    Date of Patent: May 15, 2012
    Assignee: International Business Machines Corporation
    Inventors: Elliot M. Choi, Tina M. Lemire, Martin L. Miller, III, William P. Shaouy
  • Patent number: 8181155
    Abstract: Allowing a continuation based runtime to resolve different types of location expressions, value expressions, and/or locations. This may be accomplished using a different class for each particular type. The location expression classes may each have a common method used for all of the location expression classes. The value expression classes may each have a common method, and the locations may also each have a common method. This allows the resolution of such location and value expressions to be treated in a unified fashion regardless of the type of location expression, or the type of value expression. Also, the location may be treated in a unified manner regardless of the type of location.
    Type: Grant
    Filed: February 29, 2008
    Date of Patent: May 15, 2012
    Assignee: Microsoft Corporation
    Inventors: Edmund Samuel Victor Pinto, Kenneth David Wolf, Robert Brian Schmidt, Nathan C. Talbert, Geoffrey M. Kizer
  • Patent number: 8176100
    Abstract: A system of the present invention includes a storage device for distinguishably storing old objects that are objects having existed for not less than a predetermined period since being generated and new objects that are objects having existed for less than the predetermined period since being generated. Then, a new object that has existed for less than the predetermined period since being generated is selected from the storage device, and an old object having the same content as the selected new object is searched for. If such an old object is not found, the selected new object is newly stored as an old object in the storage device. If the old object is found, a reference to the selected new object is integrated with a reference to the found old object. If the old object is stored, the reference to the selected new object is changed to a reference to the stored old object.
    Type: Grant
    Filed: August 15, 2008
    Date of Patent: May 8, 2012
    Assignee: International Business Machines Corporaton
    Inventors: Tamiya Onodera, Kiyokuni Kawachiya, Kazunori Ogata
  • Patent number: 8176469
    Abstract: A container can be used to atomically convert types of values to pass the values between programs of different programming languages. Different programs written in different programming languages can pass the values by reference to a container and can use an accessor method associated with the container to convert the values to a desired format.
    Type: Grant
    Filed: May 3, 2007
    Date of Patent: May 8, 2012
    Assignee: Oracle International Corporation
    Inventor: Terry Leonard Lucas