title: C/C++ wrapper for Haskell IO monad
body: <p>I want to call a Haskell function from C/C++. I have already read a few tutorials related to that topic, but IO monad calls are not covered in them. In particular, I would like to call a function that uses the <code>interact</code> function (<code>interact :: (String -&gt; String) -&gt; IO ()</code>).</p>
  
  <ul>
  <li>I do not understand how to use functions in this case?</li>
  <li>How can I declare function in C/C++ wrapper?</li>
  <li>How control of standard input/output will be transferred between C/C++ and Haskell (in C/C++ code)?</li>
  </ul>