semantics and portability Marc Feeley (09 Mar 2001 17:55 UTC)
Re: semantics and portability sperber@xxxxxx (09 Mar 2001 18:04 UTC)
Re: semantics and portability Per Bothner (09 Mar 2001 19:09 UTC)
Re: semantics and portability sperber@xxxxxx (10 Mar 2001 08:44 UTC)
Re: semantics and portability Marc Feeley (09 Mar 2001 19:57 UTC)
Re: semantics and portability sperber@xxxxxx (10 Mar 2001 08:52 UTC)
Re: semantics and portability sperber@xxxxxx (20 Mar 2001 10:37 UTC)
Re: semantics and portability Marc Feeley (20 Mar 2001 12:35 UTC)
Re: semantics and portability sperber@xxxxxx (20 Mar 2001 12:52 UTC)
Re: semantics and portability Marc Feeley (20 Mar 2001 14:49 UTC)
Re: semantics and portability sperber@xxxxxx (20 Mar 2001 16:35 UTC)
Re: semantics and portability Marc Feeley (20 Mar 2001 16:55 UTC)

Re: semantics and portability Per Bothner 09 Mar 2001 19:20 UTC

xxxxxx@informatik.uni-tuebingen.de (Michael Sperber [Mr. Preprocessor]) writes:

> Marc> 1) What if an implementation is not **completely** compliant to R5RS
> Marc>    (basically all the implementations of Scheme... some aren't
> Marc>    properly tail-recursive, some don't have call/cc, some don't
> Marc>    parse tokens exactly as required, etc.).  Does this mean it
> Marc>    can't conform to SRFI 22?
>
> Yes, that's what it means.  I'll specify this more clearly in the next
> revision.  I don't see any point in dealing with proper subsets of
> R5RS if we want scripts to be able to run.

Well, it is likely that 99%+ of useful scripts do not need full
tail-calls or call/cc.  Also, some implementation may be able to
support tail-calls and full call/cc but much slower.

What about the optional features of r5rs?  The same arguments apply
to being able to handle say bignums or complex numbers.  Again, 99%
of useful scripts probably need neither, and many Scheme implementations
do not support them.  Does --r5rs require the optional features?

Perhaps we should have an option (or default) to specify
"mini-Scheme": r4rs minus optional features minus call/cc (except
perhaps for exits) and minus tail-calls (except self-tail-calls in do,
let, or named function).
--
	--Per Bothner
xxxxxx@bothner.com   http://www.bothner.com/~per/