U.S. patents available from 1976 to present.
U.S. patent applications available from 2005 to present.

Method and device for program transformation using class hierarchy transformation based upon type constraint analysis

Patent 6230314 Issued on May 8, 2001. Estimated Expiration Date: Icon_subject October 2, 2017. Estimated Expiration Date is calculated based on simple USPTO term provisions. It does not account for terminal disclaimers, term adjustments, failure to pay maintenance fees, or other factors which might affect the term of a patent.

Patent References

Software design supporting method for classifying portions possibly affected by a modification into those portions that can and cannot be automatically modified
Patent #: 5287488
Issued on: 02/15/1994
Inventor: Sakata, et al.

Object-oriental system for managing shared libraries
Patent #: 5414854
Issued on: 05/09/1995
Inventor: Heninger, et al.

Method for creating an object subclass with selective inheritance
Patent #: 5493680
Issued on: 02/20/1996
Inventor: Danforth

Compiler merging new and preexisting modules while preserving function order
Patent #: 5522079
Issued on: 05/28/1996
Inventor: Acker, et al.

Object-oriented framework for creating and using container objects with built-in properties
Patent #: 5544302
Issued on: 08/06/1996
Inventor: Nguyen

Systems, methods and computer program products for generating and validating user defined object classes in an object oriented programming environment after build time
Patent #: 5732263
Issued on: 03/24/1998
Inventor: Havens, et al.

Software development tool for combining software components/modules
Patent #: 5845119
Issued on: 12/01/1998
Inventor: Kozuka, et al.

Systems, methods and computer program products for generating an object oriented application for an object oriented environment Patent #: 6023578
Issued on: 02/08/2000
Inventor: Birsan, et al.

Inventors

Application

No. 942520 filed on 10/02/1997

US Classes:

717/108, Object oriented717/154Including analysis of program

Examiners

Primary: Powell, Mark R.
Assistant: Ingberg, Todd

Attorney, Agent or Firm

International Class

G06F 009/44

Abstract

A mechanism is provided that eliminates redundant components from objects of a program. Specifically, the mechanism is capable of detecting situations where a member of a given class is used by some, but not all instances of that class, and the elimination of this member from the instances where it is not needed. This is accomplished by an analysis of the program and its class hierarchy, followed by the construction of a new, specialized class hierarchy and a transformation of the program. These operations preserve the original behavior of the program, and have the effect of "optimizing away" unneeded class members from objects. The invention is also capable of replacing class hierarchies that exhibit virtual inheritance with class hierarchies that only exhibit nonvirtual inheritance, and is applicable across a broad spectrum of inheritance structures. Transformation of virtual into nonvirtual inheritance improves program performance because it reduces the time required to access members that are located in virtual base classes. In addition, it may reduce the space required to represent objects.

Other References

  • "Object-Oriented Analysis and Simulation", David K. C. Hill Addison-Wesley Chapters 1-2 1996.
  • Object-Oriented Information Systems Planning and Implementation David A. Taylor, Apr. 1992.
  • Aho et al, Compilers Principles, Techniques and Tools Chapters 1, 9, 10, Sep. 1985.
  • B. Stroustrup et al, The Annotated C ++Reference Manual Chapters 3,4,9,19,11,12,14 and pp. 47-72 of chapter 5, Jan. 1994.
  • Type Systems for Querying Class Hierachies with non strict inheritance, A. Borgida, 1989.
  • Issues in the Design and Specification of Class Libraries, G. Kiczales et al., 1992.
  • Reuse Contracts: Managing the Evolution of Reusable Assets, P. Steyaert et al., 1996.
  • Software Reuse Architecture, Process and Organization for Business Sucess, I. Jacobson et al, Jan. 1997.
  • Feature-Oriented Programming A Fresh Look at Objects, C. Prehofer, Jun. 1997.
  • Object-Oriented Programming: Themes and Variations, M. Stefik et al., 1985.
  • Contracts: Specifying Behavioral Compositions in Object-Oriented Systems, R. Helm et al., Oct. 1990.
  • Beginning Visual C ++Components with MFC Extensions & ActiveX Controls, Matt Telles., p. 84, Oct. 1996.
  • Aho et al, Compiliers Principles Techniques and Tools pp. 10, 530-534,555-557, 585-710, Sep. 12, 1985.
  • Rumbaugh et al. Object-Oriented Modeling and Design pp. 1-45, 60-61 283-291, Nov. 1990.
  • B. Stroustrup, The C ++ Programming Language pp. 34,91,147,236,241,283,304,310,313,766, Jul. 7, 1997.
  • B. Stroustrup, The Design and Evolution of C ++, pp. 30,53,72,74,108,138,225,257,265,273,275,288,290,331, Mar. 9, 1994.
  • R.C.H. Law Object Oriented Program SLicing, May 1994.
  • Holze et al. Optimizing Dynamically Dispatched Calls with Run-Time Type Feedback, 1994.
  • Larsen et al. Slicing Object Oriented Software, 1996.
  • Dean et al Optimization of Object Oriented Programs Using Static Class Hierachy Analysis, Aug. 1985.
  • Zhao et al. Static Slicing of Concurrent Object Oriented Programs, 199
PatentsPlus Images
Enhanced PDF formats
loading...
PatentsPlus: add to cart
PatentsPlus: add to cartSearch-enhanced full patent PDF image
$9.95more info
PatentsPlus: add to cart
PatentsPlus: add to cartIntelligent turbocharged patent PDFs with marked up images
$18.95more info
 
Sign InRegister
Username  
Password   
forgot password?