[plt-scheme] Volunteers: help with Moby!
Hi Danny,
I'd be glad to help out. I suppose the most suitable might be the
translation of primitive functions, to get into the project, if you agree.
Also, would it be possible to get some more background information? I
checked out the project, ran the test suite, read the README etc., but
I'm still a bit unclear about the general purpose: Why a
source-to-source compiler? mzc already compiles to bytecode, why not
simply use this (plainly asked ;-) )
Then, about the source translation itself, are the essentials of how the
translation to Java is done described somewhere - perhaps in some
scientific publication you could mail me?
And is this translation based on some other, preexisting scheme->java
compiler, or is it independent? In fact this lets me clarify my question
from above - I should have thought there must be quite some scheme->java
compilers already? Perhaps this assumption was totally wrong - or
perhaps most directly compile to bytecode, and the speciality of this
project is exactly the translation to Java source? (Please don't get
angry on my plain questions ;-) , I just want to "get" the main things
about the application)
[[[As an example of why I'd like some background on the compiler
implementation, I just played around a bit and entered
(program->java-string '(+ 2 3))
in drscheme, and the output
"static { org.plt.Kernel.identity(org.plt.Kernel._plus_); }\nstatic {
org.plt.Kernel.identity((new org.plt.types.Rational(2, 1))); }\nstatic {
org.plt.Kernel.identity((new org.plt.types.Rational(3, 1))); }\n"
is not too clear to me...]]]
Thanks
Sigrid