You might also want to look at Scipy's weave:<p><a href="http://www.scipy.org/Weave" rel="nofollow">http://www.scipy.org/Weave</a><p>It's not as small or self-contained, but it looks to be more actively maintained.<p>A comparison with some other optimization methods:<p><a href="http://www.scipy.org/PerformancePython" rel="nofollow">http://www.scipy.org/PerformancePython</a>
Very nice. If any folks interested in Ruby are reading the article and feeling jealous, make sure to check out RubyInline ( <a href="http://www.zenspider.com/ZSS/Products/RubyInline/" rel="nofollow">http://www.zenspider.com/ZSS/Products/RubyInline/</a> ) - it's pretty solid.<p>Might do a direct comparison of the efficiency of the bridging between RubyInline and Cinpy if I get some time. I <i>suspect</i> Python would win just because Ruby's object bridging is quite intense..