Related articles |
---|
Interface implementation ramiro@cs.cornell.edu (Ramiro Rodriguez) (2004-10-12) |
Re: Interface implementation andi@a4.complang.tuwien.ac.at (2004-10-17) |
Re: Interface implementation tzvetanmi@yahoo.com (2004-10-17) |
Re: Interface implementation vbdis@aol.com (2004-10-17) |
Re: Interface implementation eeide@cs.utah.edu (Eric Eide) (2004-10-17) |
Re: Interface implementation cfc@shell01.TheWorld.com (Chris F Clark) (2004-10-17) |
From: | Eric Eide <eeide@cs.utah.edu> |
Newsgroups: | comp.compilers |
Date: | 17 Oct 2004 16:09:33 -0400 |
Organization: | University of Utah School of Computing |
References: | 04-10-102 |
Keywords: | OOP, bibliography |
Posted-Date: | 17 Oct 2004 16:09:33 EDT |
Ramiro Rodriguez <ramiro@cs.cornell.edu> writes:
> I am writing a small compiler and i want the language to have
> interfaces. The problem I am having is how to implement
> function calls efficiently. When having simple class
> inheritance and polymorphism we can have a call table and the
> function call be be mapped in assembly as an offset into the
> table. However for things like interfaces this seems to be not
> as easy if one allows multiple interface implementation. I
> could do a table which is referenced by the name of the
> function but I am wondering if there is some more efficient way
> of doing this.
Perhaps you could start your research by reading this paper:
Bowen Alpern, Anthony Cocchi, Stephen Fink, David Grove, and Derek
Lieber. "Efficient Implementation of Java Interfaces: Invokeinterface
Considered Harmless." In Proceedings of the 2001 ACM Conference on
Object-Oriented Programming, Systems, Languages, and Applications
(OOPSLA), Tampa, FL, USA, Oct 14-18, 2001.
<http://www.research.ibm.com/people/d/dgrove/papers/oopsla01.html>
Good luck with your project! ---
Eric.
--
-------------------------------------------------------------------------------
Eric Eide <eeide@cs.utah.edu> . University of Utah School of Computing
http://www.cs.utah.edu/~eeide/ . +1 (801) 585-5512 voice, +1 (801) 581-5843 FAX
Return to the
comp.compilers page.
Search the
comp.compilers archives again.