title: How to use modules in racket?
body: <p>I want to separate my unit test code from my other code.</p>
  
  <p>I put the test code into one file and the other code into another file in the same directory:</p>
  
  <p>The actual code file:</p>
  
  <pre><code>#lang racket
  (provide
    ...procedure names...)
  ...procedures...
  </code></pre>
  
  <p>The test code file:</p>
  
  <pre><code>#lang racket
  (require rackunit)
  (require "...filename of the actual code file...")
  ...some additional procedures...
  ...test suite with multiple test cases in it...
  </code></pre>
  
  <p>Then I run:</p>
  
  <pre><code>raco test test-code-filename
  </code></pre>
  
  <p>However, this does not work, at the first test case at the first call of a procedure, which is not defined in the test code file, it tells me it is an unbound identifier.</p>
  
  <p>Before this structure, I also tried to use <code>(module</code> and <code>(module+</code> combinations in the files, but the same issue appeared.</p>
  
  <p>Somehow I don't seem to understand modules correctly from reading the documentation. How can I achieve this split of the code (having it separated in two files)?</p>