Scheme as a virtual machine?

Pascal J. Bourguignon pjb at informatimago.com
Thu Oct 14 08:44:05 EDT 2010


namekuseijin <namekuseijin at gmail.com> writes:

> On 13 out, 19:41, p... at informatimago.com (Pascal J. Bourguignon)
> wrote:
>> namekuseijin <namekusei... at gmail.com> writes:
>> > On 11 out, 08:49, Oleg  Parashchenko <ole... at gmail.com> wrote:
>> >> 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
>> >> some research, the main candidates are Gambit, Chicken and CPSCM:
>>
>> >>http://uucode.com/blog/2010/09/28/r5rs-scheme-as-a-virtual-machine-i/...
>>
>> >> If there is an interest in this work, I could publish progress
>> >> reports.
>>
>> >> --
>> >> Oleg Parashchenko  olpa at http://uucode.com/http://uucode.com/blog/ XML, TeX, Python, Mac, Chess
>>
>> > it may be assembler, too bad scheme libs are scattered around written
>> > 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,
>>
>> Yep, it only has two for java.
>
> I hope those are not Clojure and Qi... :p

No, they're CLforJava and ABCL.

-- 
__Pascal Bourguignon__                     http://www.informatimago.com/



More information about the Python-list mailing list