[Q][VM][ENH][RFH][COMP] Request For Help : CompilerPlugin

Matthias.Klein at tlc.de Matthias.Klein at tlc.de
Fri Apr 5 10:24:15 UTC 2002



Hi Hans-Martin, PhiHo


First, thanks to Hans-Martion for his extensive historical information.

Hans-Martin wrote:
>> bytecode to machine code directly (did we invent the jitter, then?)

>No, ParcPlace Smalltalk had it 1984 IIRC. Peter Deutsch's PS (Portable
Smalltalk)
>engine was really slick, compiled ST-80 bytecodes (very close to Squeak's

Well, that was not serious. In fact, we were the *Mechanics* Department, not the
CS
Guys.. Unfortunately, i never managed tu buy a copy of the Green Book when it
was
still time. Now they sell used copies for about $80-90 - well, rare collectible
items.

PhiHo wrote:
>    This is interesting, would you please elaborate. What's the
>mechanism to load the methods/object ? Are they in source or binay ? (I
>wouldn't push if it's a trade secret :-)

No trade secret here, as i said, we never implemented it. (Not quite true, we
had a
working prototype, but it only worked for byte-compiled methods).The plan was to
use
a kind of 'Object database' - well just a binary file- for the image. Every
object
would be loaded when first referenced (Compiled methods are objects, too!).
Changed
objects were written back to a log-structured file when swapped out as to leave
the
original image unchanged. When doing a save, the log would be integrated back
into the image.

We did never think about sources because finally everything was to run on the
robot's
controller board.

>    Now we have Mono, DotGNU and ROTOR, maybe it's about time to
>think about Morphic.Monkey ;-)

I did not think of porting Squeak to .NET or the .NET VM. IMHO, it is better to
adapt the
VM to the language compiled It should give you a simpler VM desing (?) if you
don't try
to be universal.

No, i was thinking of adapting the jit engine of mono to Squeak bytecodes. Maybe
this
could be done in a way so you can benefit from ported versions of mono? This
could be
an alternative to using C as platform-independent assembly language. Still some
work
to do when porting to a new cpu architecture, but not too much, hopefully

Cheers, Matthias





More information about the Squeak-dev mailing list