Lobbying Smalltalk...

Andrew C. Greenberg werdna at gate.net
Thu Sep 30 10:20:30 UTC 1999


>..or:
>                            Winning Ignorance
>
>Excuse me,
>    I'd like to talk about a small idea: creating a Squeak VM for Java
>Using the CCodeGenerator engine, I think would be not so difficult to
>generate a JavaCodeGenerator class for building java source code for the
>VM.
>We will have Squeak running in a JavaVM, perhaps a bit slowly.
>After a bit of working, we can try to integrate the java GC, JavaBeans
>and the Security concepts of Java into Squeak, generating a hybrid VM
>and the Smalltalk of the future.
>
>A lot of java-students will look with interest to a Java-based
>implementation of Smalltalk, and start to download the SqueakVM....
>
>This is only an idea. I know the efficency problem 'd be not so tiny and
>so I am only talking about it....
>..someone interested?

Assuming that the CCodeGenerator generated Java Object rather than C, 
the net effect would be a bytecode interpreter for a dynamic language 
with garbage collection running a bytecode interpreter for a dynamic 
language with garbage collection.  This can be expected to crawl -- 
for an example of what it would be like, run the Squeak inside Squeak 
interpreter simulator.

A similar, but far more successful task was JPython, an 
implementation of Python in Java.  In that case, however, far more 
than a mere port of the preexisting bytecode generator was 
accomplished -- this was a complete rewrite which itself exploited 
the JPython object and memory model.  I considered doing a parallel 
task, but it was not obvious how to avoid some of the deeper 
differences between the systems.

Earlier messages in this listServ announced the result of a working 
Smalltalk in Python.  You may want to see what they have done to date 
before undertaking the task yourself.





More information about the Squeak-dev mailing list