namekuseijin
2010-10-13 21:09:08 UTC
Hello,
I'd like to try the idea that Scheme can be considered as a new
portable assembler. We could code something in Scheme and then compile
it to PHP or Python or Java or whatever.
Any suggestions and pointers to existing and related work are welcome.
Thanks!
My current approach is to take an existing Scheme implementation and
hijack into its backend. At this moment Scheme code is converted to
some representation with a minimal set of bytecodes, and it should be
quite easy to compile this representation to a target language. After
http://uucode.com/blog/2010/09/28/r5rs-scheme-as-a-virtual-machine-i/http://uucode.com/blog/2010/09/28/r5rs-scheme-as-a-virtual-machine-ii/
If there is an interest in this work, I could publish progress
reports.
--
it may be assembler, too bad scheme libs are scattered around writtenI'd like to try the idea that Scheme can be considered as a new
portable assembler. We could code something in Scheme and then compile
it to PHP or Python or Java or whatever.
Any suggestions and pointers to existing and related work are welcome.
Thanks!
My current approach is to take an existing Scheme implementation and
hijack into its backend. At this moment Scheme code is converted to
some representation with a minimal set of bytecodes, and it should be
quite easy to compile this representation to a target language. After
http://uucode.com/blog/2010/09/28/r5rs-scheme-as-a-virtual-machine-i/http://uucode.com/blog/2010/09/28/r5rs-scheme-as-a-virtual-machine-ii/
If there is an interest in this work, I could publish progress
reports.
--
in far too many different flavors of assembler...
It warms my heart though to realize that Scheme's usual small size and
footprint has allowed for many quality implementations targetting many
different backends, be it x86 assembly, C, javascript or .NET. Take
python and you have a slow c bytecode interpreter and a slow
bytecode .NET compiler. Take haskell and its so friggin' huge and
complex that its got its very own scary monolithic gcc. When you
think of it, Scheme is the one true high-level language with many
quality perfomant backends -- CL has a few scary compilers for native
code, but not one to java, .NET or javascript that I know of...