If I understand things correctly, Traits (at least as implemented for Squeak) cannot include references to instance variables, and so the performance will largely be constrained by method send performance. Is this correct?
If this is the case (that Traits relies heavily on send performance and therefore method lookups, etc.) I would be concerned about migrating any of Squeak's class library to a Traits based implementation. This may be incentive enough though to seriously consider upgrading the VM to use the 'stack frame based contexts converted to full objects as necessary', or any other techniques that improve send performance.
On a slightly related note, using a 3.7 VM, I see around 4 million sends/sec on my 3 GHz Pentium 4 HT, but about 6 million sends/sec on my 1.2 GHz iBook G4. The bytcodes/sec performance is higher on the P4 than the iBook though. Can anyone explain this?
-Dean
stéphane ducasse ducasse@iam.unibe.ch Sent by: squeak-dev-bounces@lists.squeakfoundation.org 04/27/2005 10:25 AM Please respond to The general-purpose Squeak developers list
To: The general-purpose Squeak developers list squeak-dev@lists.squeakfoundation.org cc: Subject: Fwd: Fortress Language Specification
Interesting... and worth to read (not only for traits).
Stef
squeak-dev@lists.squeakfoundation.org