From: someone [Olin removed the attribution and I didn't get
the original message]
The real problem with relying on Scheme48 is that even if some brilliant
person wanted to implement a hot new VM with all the features to save
virtual memory, they couldn't. The damn thing is written in Pre-Scheme and
for all I know there's a small cabal (of 1?) who have the Pre-Scheme
compiler.
A first step to getting better virtual memory behavior would be getting a
VM written in Bigloo, Gambit, or Scheme->C.
You already have one. Pre-Scheme is close enough to Scheme that you
can run the current VM using any of these, with only a little work.
In the past I have run it using T/Orbit, Chez Scheme, and Scheme->C.
I would be happy to help anyone who wanted to run the VM using Bigloo,
Gambit, or Scheme->C. I would like to get an accurate notion of how
good a job the Pre-Scheme compiler does.
Here are some quite old numbers for the time to run (fib 22) in
Scheme 48 using various systems to run the VM on a MIPS R3000:
Scheme->C 120.00 seconds
Orbit, no in-lining 33.00 "
Orbit, in-lining 5.40 "
Pre-Scheme 0.84 "
Pre-Scheme is a much bigger departure from normal practice than
Scheme 48 is. It was intended as a quick hack and ended up being
anything but. The reason that I have not made a general release of the
Pre-Scheme compiler is that it is buggy and not at all user-friendly.
I have made it available to a number of people who have had particular
projects in mind. In most cases I have had to do a lot of hand-holding.
My intent is to release the Pre-Scheme compiler with the next Scheme 48
release (yes, there will be another one). I expect to regret doing so.
Why do so many people want to hack the VM and no one wants to hack
the run-time system?
-Richard Kelsey
|