Related articles |
---|
Optimization for OOP sgkelly4@gmail.com (2008-05-03) |
Re: Optimization for OOP torbenm@app-1.diku.dk (2008-05-05) |
Re: Optimization for OOP mailbox@dmitry-kazakov.de (Dmitry A. Kazakov) (2008-05-05) |
Re: Optimization for OOP dot@dotat.at (Tony Finch) (2008-05-05) |
Re: Optimization for OOP lucretia9@lycos.co.uk (lucretia9@lycos.co.uk) (2008-05-05) |
Re: Optimization for OOP mailbox@dmitry-kazakov.de (Dmitry A. Kazakov) (2008-05-06) |
Re: Optimization for OOP sgkelly4@gmail.com (2008-05-06) |
From: | Tony Finch <dot@dotat.at> |
Newsgroups: | comp.compilers |
Date: | 05 May 2008 18:11:27 +0100 (BST) |
Organization: | dotat labs |
References: | 08-05-008 08-05-010 |
Keywords: | OOP, optimize |
Posted-Date: | 05 May 2008 17:13:11 EDT |
torbenm@app-1.diku.dk (Torben =?iso-8859-1?Q?=C6gidius?= Mogensen) wrote:
>
>The most important optimisation is to get rid of dynamic method calls.
>This can, however, be quite tricky as you can't tell if a method can
>be overridden without knowing the whole program, so it plays havoc
>with separate compilation.
The Self papers have some good descriptions of optimisation techniques
for a pure OO language. http://research.sun.com/self/papers/papers.html
In a VM-based language you can implement a tracing JIT which naturally
specializes away dynamic dispatch. Mike Pall wrote a short description
of how this works in the second half of his post to the Lua list
linked below, with some references to papers.
http://lua-users.org/lists/lua-l/2008-02/msg00051.html
Tony.
--
f.anthony.n.finch <dot@dotat.at> http://dotat.at/
FITZROY SOLE: VARIABLE 4 IN EAST, OTHERWISE SOUTHERLY 5 TO 7, OCCASIONALLY
GALE 8 IN WEST SOLE. ROUGH OR VERY ROUGH IN WEST, SLIGHT OR MODERATE IN EAST.
SHOWERS, WITH FOG PATCHES IN EAST. MODERATE OR GOOD, OCCASIONALLY VERY POOR.
Return to the
comp.compilers page.
Search the
comp.compilers archives again.