Planning Exupery 0.13

bryce at kampjes.demon.co.uk bryce at kampjes.demon.co.uk
Fri Oct 26 19:06:59 UTC 2007


Igor Stasenko writes:
 > Hi Bryce,
 > can you explain, please, what you mean is 'failed to compile'?
 > What blocking Exupery to compile them? Primitives, special bytecodes?

The two main causes are missing primitives and bytecodes. The main
bytecode missing is the dup bytecode used to implement cascades. There
isn't a strong case for compiling most primitives as they're already
optimised by the C compiler. There are a few frequently called
primitives that provide oportunity to optimise such as the #at:
primitive.

It's only when compiling the method which contains the primitive that
a missing primitive will cause Exupery to fail to compile. It deals
gracefully with a failure to inline a primitive which is much more
common.

Another problem with the current code to drive the background compiler
is the profiler may queue a method to compile that's already in the
queue. This is wasteful but doesn't seem to happen a lot.

Bryce


More information about the Exupery mailing list