James Ladd <<mailto:[email protected]>[email protected]> wrote...
Hi Pharo-ites,
I'm working on a port of Pharo to the Java Virtual Machine called
Redline Smalltalk.
(read more
here: <http://jamesladdcode.com/?p=323>http://jamesladdcode.com/?p=323)
I'm wanting to port every single class over time, but initially
enough to get the
compiler working and have a minimum runtime.
Of the 1600+/- classes which are those necessary to make a small
workable compiler
and runtime environment?
Hi, James -
Bert Freudenberg forwarded this along to me, as I'm not on a Pharo
mailing list.
I think you know of my JSqueak project (a.k.a. Potato) -- a Squeak VM
written in Java. The image that I used with it, is the same that I
always use for this kind of experiment -- mini.image built in Squeak
2.2.
The reason it is so cool is that it includes browser, editor,
compiler, inspector debugger, and files -- everything you need for
self-support. Plus it has the decompiler, and special temp-name
hack, so you can actually browse sources with temp names before any
file system works. My favorite thing about this image is that
although it is only 600k, if you decompile all its sources, it
comprises over 850k of Smalltalk, so it's like a compressed version
of the sources with a full-function IDE thrown in for free ;-).
As I said, the image is about 600k, of which 240k is code -- 202
classes (x2 if you count the metas) with 4590 methods. This should
be a good guide for you in choosing classes to start with.
You can actually run this image live in JSqueak on the web if you
have Java installed and the planets are aligned correctly...
http://Weather-dimensions.com/Dan/JSqueak.jnlp
Another interesting statistic is that the Java .jar file is only
433k, including not only the VM, but also the entire image! This is
possible because the image is so small that the pointers in it are
mostly zeroes, so it compresses nicely. I just checked that this
runs, and was happy to see that it putts along at 21 million
bytecodes/sec on my laptop.
I haven't looked recently, but I think you'll find Mini2.2.image or
something like it in the same place where all the historical releases
of Squeak are kept. Let me know if you can't find it.
Have fun with your project! I hope this helps
- Dan_______________________________________________
Pharo-project mailing list
[email protected]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project