Electrical computers and digital processing systems: multicomput – Computer-to-computer data routing – Least weight routing
Patent
1996-05-09
1999-09-28
Downs, Robert W.
Electrical computers and digital processing systems: multicomput
Computer-to-computer data routing
Least weight routing
395705, 709303, G06F 944
Patent
active
059601973
ABSTRACT:
A compiler is described that generates instructions to execute object-oriented method call invocations in an efficient manner. Specifically, a method dispatch operation distinguishes between those method calls that do not require dynamic invocation from those that do, and optimizes the instructions generated to perform the former. For each object class declaration encountered during compilation, a dispatch array is created. Each dispatch array contains entries for all method calls which can be made to the class, including those implemented in an ancestor class(es), and all protocols adopted by these classes. As each method call is parsed during compilation, if the compiler finds an entry for the calling method in a dispatch table, an instruction to call a non-dynamic method dispatch function is generated. If, on the other hand, no entry for the calling method is found in a dispatch array, the compiler generates a conventional dynamic method dispatch instruction. The non-dynamic method dispatch function uses the dispatch array to directly identify the calling method's executable code segment. Use of non-dynamic method invocation can provide a substantial speed gain during program execution.
REFERENCES:
patent: 5421016 (1995-05-01), Conner et al.
patent: 5515536 (1996-05-01), Corbett et al.
patent: 5535391 (1996-07-01), Hejlsberg et al.
patent: 5579518 (1996-11-01), Yasumatsu
Atkinson, "Hurricane: An Optimizing Compiler for Smalltalk," Conference Proceedings from Object-Oriented Programming Systems, Languages and Applications (OOPSLA) '86, Sep. 29-Oct. 2, 1986, Portland, Oregon, vol. 21, No. 11, pp. 151-158 (1986).
Baron et al., "MACH Kernel Interface Manual," Department of Computer Science, Carnegie-Mellon University, Pittsburgh, Pennsylvania, research sponsored by the Defense Advanced Research Projects Agency (DOD), ARPA Order No. 4864, monitored by the Space and Naval Warfare Systems Comand under contract N00039-84-C-0467, version of Aug. 23, 1990.
Chambers et al., "An Efficient Implementation of SELF, a Dynamically-Typed Object-Oriented Language Based on Prototypes," Conference Proceedings from OOPSLA '89, Oct. 1-6, 1989, New Orleans, Louisiana, vol. 24, No. 10, pp. 49-70 (1989).
Rose, "Fast Dispatch Mechanisms for Stock Hardware," Conference Proceedings from OOPSLA '88, Sep. 25-30, 1988, San Diego, California, vol. 23, No. 11, pp. 27-35 (1988).
Walmer et al., "A Programmer's Guide to the MACH System Calls," Department of Computer Science, Carnegie-Mellon University, Pittsburgh, Pennsylvania, version of Nov. 16, 1989.
Walmer et al., "A Programmer's Guide to the MACH User Environment," Department of Computer Science, Carnegie-Mellon University, Pittsburgh, Pennsylvania, version of Nov. 16, 1989.
Trehan et al., "Concurrent Object Oriented `C`(COOC)", ACM Sigplan Notices, Feb. 1993, vol. 28, No. 2, pp. 45-52.
Chaki Kakali
Downs Robert W.
Sun Microsystems Inc.
LandOfFree
Compiler dispatch function for object-oriented C does not yet have a rating. At this time, there are no reviews or comments for this patent.
If you have personal experience with Compiler dispatch function for object-oriented C, we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and Compiler dispatch function for object-oriented C will most certainly appreciate the feedback.
Profile ID: LFUS-PAI-O-714194