[M3devel] JIT [WAS: Google Benchmark - anyone interested in an Modula 3 version?]

Hendrik Boom hendrik at topoi.pooq.com
Mon Jul 4 15:23:26 CEST 2011


On Mon, Jul 04, 2011 at 02:51:24AM +0100, Daniel Alejandro Benavides D. wrote:
> Hi all:
> it
> would mean to compete in such a way in a super computer an alternative
> to run without garbage collection (not unsafe but ESC/Modula-3 RTError
> and RTCollector disabled but for safe automatically collected objects,
> again if we are strictly speaking of a naive implementation algorithm,
> if parallelization is allowed under recursive or nested paradigms we
> are set to compete too but not absolutely).
> I mean, given the effort
> they took to run the compiler and tune it for other languages and would
> get same compiler effort plus ESC modelling to subsume the collector
> for perhaps dynamic scripting like say e.g Obliq, we don't want to
> compete with Obliq, but if we do I guess we can't compile JIT

JIT.

This is a missing feature in Modula 3 -- it would probably need to 
be implemented as a library, and it would be a huge implementatino 
project.  It would involve writing -- or finding -- code generators for 
many maching archtectures, and it would require careful integratio with 
the garbage collector.  Both the data structures built by gennerated 
code and the generated code itself would have to be garbage-collectible.

The JIT coder would have to accept relatively low-level instructions and 
produce in-memory object code.  Ideally, unless you use the UNSAFE JIT, 
it would have to perform suitable static and run-time 
checking on and in the code it's generating.

People implementing currently interpreted languages would have the 
option of calling this JIT coder instead.

I've been tinkering from time to time with bits of code in this 
direction, but it's a huge job.  And, in my opinion, LLVM doesn't really 
do this right.  C-- comes a lot closer, but it isn't a JIT.  Maybe 
something like it could be?

-- hendrik



More information about the M3devel mailing list