title: for/continue in scheme/lisp
body: <p>I'm writing a small interpreter for a C-like language in Scheme (R5RS) and trying to convert something like:</p>
  
  <pre class="lang-c prettyprint-override"><code>for (i = 0; i &lt; 100; i++)
  {
      if (isprime(i)) continue;
      else /* do something with i */
  }
  </code></pre>
  
  <p>to valid Scheme (the isprime function is just an example and not important). </p>
  
  <p>However, after trying for some time, I have not been able to find an efficient/simple way to add the equivalent of a continue statement to a do loop in Scheme. What would be even better would be a "for" macro which allows "continue" and "break" to be used.</p>
  
  <p>I'm considering switching to Common Lisp. Would this sort of thing be any easier in CL?</p>