 loop) before invoking this procedure.
</p>
<p>If the optional &rsquo;handler&rsquo; argument is provided, then that handler will
run if &rsquo;generator&rsquo; throws an exception; otherwise the program will
terminate if an unhandled exception propagates out of &rsquo;generator&rsquo;.
&rsquo;handler&rsquo; should take the same arguments as a guile catch handler
(this is implemented using catch).  Note that unlike a handler passed
to the thread-pool-add! procedure, &rsquo;handler&rsquo; will run in the eve