[r6rs-discuss] shift toward compilers (was Multiple returns from higher-order procedures)
John Cowan wrote:
> I believe you have misunderstood me. I meant:
> Is it really true that the Scheme community as a whole
> prefers interpreters to compilers? Or that there are
> more Scheme projects delivered under interpreters than
> compilers? Or whatever presupposition you had in mind.
Until fairly recently, I think the majority of
Scheme programmers were using interpreters (or
byte code interpreters, or similar). This
probably changed with PLT Scheme's use of JIT
compilation on x86 machines.
I also believe the draft R6RS marks something
of a shift away from Scheme's educational,
research, and experimental priorities toward
the perceived priorities of delivered code,
which is mostly compiled. The last guiding
principle of the introduction is the closest
thing I can find to explicit acknowledgement
of this shift.
The next-to-last guiding principle reflects
fear that, left to their own devices, those
evil compiler writers might undermine Scheme's
PR claim to be as safe as languages like Java,
C#, and especially Standard ML and Haskell.
In the status reports of February and June 2006,
that guiding principle went on to say "while
also providing a standard way to declare whether
such checks are desired". That part of the
principle was clearly directed at compiled code;
it was dropped in response to several formal
comments on the 5.91 draft. I think the effect
of dropping declarations will be a net loss of
safety, as programmers compile entire files in
unsafe mode instead of asking for runtime checks
to be disabled only within speed-critical loops.
Oh, well.
Will
Received on Mon Jun 25 2007 - 20:48:43 UTC
This archive was generated by hypermail 2.3.0
: Wed Oct 23 2024 - 09:15:01 UTC