[ANN] Chuck type inferencer

Colin Putney cputney at wiresong.ca
Sat Jun 5 18:22:44 UTC 2004


On Jun 5, 2004, at 11:45 AM, Marcus Denker wrote:

> Yes, but that would be totaly transparent for the user (e.g. the 
> developer). A dynamic optimizing system always de-optimizes as soon
> as you try to look harder (e.g with the debugger).
>
> So all the magic of AOStA is pretty much invisible. On the other hand: 
> Having a Jitter around by default means that we don't care
> about how bad the non-optimized code is wrt. to execution. We could 
> use the AST directly. (Or better, a compressed version like
> franz' Slim Binaries...).

Yes, I've been thinking about this as well. There's an interesting 
paper on compressing syntax trees using the abstract grammar as a 
statistical model, which I'm going to implement at some point. 
<http://www.ics.uci.edu/~cstork/ire2001.pdf>. It's designed so that 
most of the work is done by the compressor - decompression is fast.

The first step would be to create a binary format for distributing 
Squeak code that would be faster to load than fileOuts - ie, decompress 
the AST and generate byte code without having to do any parsing. Beyond 
that would be modifying the interpreter to execute the binary format 
directly.

> So "CompiledMethods are flattened parsetrees" does not mean that you 
> would use the cm we have now as the AST, but use the AST as the 
> compiled methods...

Yes, "Parse trees are structured CompiledMethods". I'd love to see 
Squeak executing ASTs with the hotspots optimized by Exupery.

Colin




More information about the Squeak-dev mailing list