John Cowan wrote:
> Anton van Straaten scripsit:
> 
>> Right.  But the question is, should it be possible to implement all 
>> those things in Scheme, without having to resort to coding in some lower 
>> level or host language?  If the answer is yes, then you still need 
>> something like first-class continuations.  The same argument applies to 
>> (something like) threads.
> 
> Possible is one thing, sensible is another.  It's possible to implement
> blobs with ordinary general vectors, if you don't mind paying the price.

The mandate for Small Scheme argues for including general low-level 
features, even if they're more possible than sensible.  For example, 
first-class continuations are very useful for education about control 
flow, which would still be true even if it wasn't sensible to use them 
to implement real control flow mechanisms.  Of course, in the 
continuations case there's plenty of evidence that they're sensible too.

So the possible vs. sensible warning may or may not be an issue, 
depending on the specifics.

My point is not to defend any particular conception of "threads" (since 
it depends greatly on which conception we're discussing), but rather 
that general features that seem too low-level for application 
development shouldn't necessarily be rejected on those grounds.  Having 
a gap between core language features and application development 
requirements isn't a problem if the gap can be filled by libraries.  In 
"Possible Scheme", those libraries can be implemented in pure Scheme. 
Some implementations of "Sensible Scheme" might choose a less abstract 
approach.

Anton


_______________________________________________
r6rs-discuss mailing list
[email protected]
http://lists.r6rs.org/cgi-bin/mailman/listinfo/r6rs-discuss

Reply via email to