<div dir="ltr"><div>I have a question about section 1.1.13 of the Reference:</div>
<div>&nbsp;</div>
<div>1.1.13 Threads<br>Scheme supports multiple, pre-emptive threads of evaluation. In terms of the evaluation model, this means that each step in evaluation actually consists of multiple concurrent expressions, rather than a single expression. The expressions all share the same objects and top-level variables, so that they can communicate through shared state. Most evaluation steps involve a single step in a single expression, but certain synchronization primitives require multiple threads to progress together in one step.</div>

<div>&nbsp;</div>
<div>&nbsp;</div>
<div>I take this to mean that multiple redexes can, at least potentially be evaluated concurrently, possibly synchronizing to get the order of evaluation right. But taken to an extreme, this sounds like overkill. Are threads routinely created to evaluate sub-expressions, or does this mean that expressions are potentially evaluated in a separate thread? Or is it maybe something completely different - that there are &quot;threads&quot; in the usual sense, and this passage should be taken as definitional (that threads are continuations?)</div>
</div>