<p>Cafe,</p>
<p>I&#39;m writing a network application that uses static configuration a la xmonad and yi. When the app receives a certain command it  recompiles its source, closes the socket it is using and runs its newly compiled &quot;predecessor&quot; as a new process.</p>

<p>The problem I&#39;m having is that the port that the parent process was using is not available to the child process. Even though the parent process has terminated, the port is unusable until the child process also terminates. Can anyone give me a clue about what&#39;s going on here?</p>

<p>I&#39;m using Network and System.Process modules and ruining on Ubuntu linux. I&#39;m using the sClose function to close the socket.</p>
<p>Thanks for any tips.</p>
<p>--Jonathan</p>