Efficient Execution of Pure Object-Oriented Programs by Follow-up Compilation |
| |
Authors: | S Baskiyar |
| |
Affiliation: | (1) Assitant Professor Department of Computer Science & Software Engineering Auburn University Auburn, AL 36849, USA e-mail: baskiyar@eng.auburn.edu http://www.eng.auburn.edu/users/baskiyar, US |
| |
Abstract: | Dynamic type checking and method binding slows pure object-oriented programs such as those written in Smalltalk. Dynamic
method lookup is needed to support method overriding and type-method conformance. We have developed a platform independent
technique that implements method overriding efficiently for pure object-oriented languages. The technique involves binding
non-overridden method calls at compile time. The overridden method calls are also resolved (and bound) statically using simple
inferences. Overridden method bindings are corrected dynamically using an Overridden Method Dictionary. Using simulations,
we demonstrate that this technique offers 35% –70% reduction in the average method lookup delay over the Berkeley Smalltalk
implementation. This technique has very low compile time overhead, memory overhead, does not need specialized hardware and
allows shared code pages in concurrent programs. For programs which may be re-used, it is proper to have a follow-up compilation to generate efficient code after the program development is complete.
Received November 7, 2001; revised March 27, 2002 Published online: October 24, 2002 |
| |
Keywords: | AMS Subject Classifications: 68N20 68N19 68N15 68N25 |
本文献已被 SpringerLink 等数据库收录! |
|