<html>
<head>
<style><!--
.hmmessage P
{
margin:0px;
padding:0px
}
body.hmmessage
{
font-size: 12pt;
font-family:Calibri
}
--></style></head>
<body class='hmmessage'><div dir='ltr'><font face="Arial">Hi,</font><div><font face="Arial"><br></font></div><div><font face="Arial">In Gambit 4.7.2 documentation, in the section dedicated to threads, there is the following code example :</font></div><div><font size="3" face="Arial"><br></font></div><div>
<div class="page" title="Page 103">
<div class="layoutArea">
<div class="column">
<pre><font size="3" face="Arial">(define thread-alive?
(let ((unique (list ’unique)))
</font></pre>
<pre><font size="3" face="Arial"> (lambda (thread)
; Note: this procedure raises an exception if
; the thread terminated abnormally.
(eq? (thread-join! thread 0 unique) unique))))</font></pre><pre><font face="Arial" size="3">This code is actually incorrect (according to gsi), the let is rejected. I believe that :</font></pre><pre><pre><font size="3" face="Arial">(define thread-alive?</font><span style="font-family: Arial; font-size: 12pt;"> </span></pre><pre><span style="font-family: Arial; font-size: 12pt;"> (lambda (thread)</span></pre><pre><font size="3" face="Arial"> (eq? (thread-join! thread 0 'unique) 'unique)))</font></pre><pre><font size="3" face="Arial"><br></font></pre><pre><font size="3" face="Arial">should be enough (though I do not know what happens if the thread returns nothing). I would like to know if there was some precise reason behind this let construction.</font></pre><pre><font face="Arial" size="3">Thanks,</font></pre><pre><font face="Arial" size="3"><br></font></pre><pre><font face="Arial" size="3">Denis</font></pre></pre>
</div>
</div>
</div></div> </div></body>
</html>