<html>
  <head>
    <meta content="text/html; charset=ISO-8859-1"
      http-equiv="Content-Type">
  </head>
  <body bgcolor="#FFFFFF" text="#000000">
    <font face="Georgia">Seems like you could do that fairly easily
      without </font>making the VM re-entrant (whatever that might
    mean/entail). If you thought of your Squeak app and your C app as
    two computers on a network, they could send each other requests and
    responses all day long. No magic required.<br>
    <br>
    Cheers,<br>
    Bob<br>
    <br>
    <div class="moz-cite-prefix">On 12/3/12 10:10 AM, Blake McBride
      wrote:<br>
    </div>
    <blockquote
cite="mid:CABwHSOujaYjdLeDQwNDx2T-f5DE+TVq4y-tasJYhdsZU+6AkiQ@mail.gmail.com"
      type="cite"><span class="Apple-style-span"
style="border-collapse:collapse;color:rgb(34,34,34);font-family:arial,sans-serif;font-size:13px">Greetings,
        <div><br>
        </div>
        <div>I tried to integrate Squeak to a C based application more
          than six years ago. &nbsp;The project failed because we were not
          able to have our application call Squeak, then have Squeak
          call the application, and then the application call Squeak
          again recursively. &nbsp;An analysis of the Squeak VM revealed a
          kernel design consisting of a lot of global variables - quite
          unnecessarily. &nbsp;The unnecessary use of global variables over a
          localized structure for example unnecessarily prevented the
          use of Squeak as an extension language (unless you had no
          recursion). &nbsp;I spent several days trying to re-structure the
          Squeak kernel but I kept running into problems and just ran
          out of time.&nbsp;</div>
        <div><br>
        </div>
        <div>As a side note, that company I was with ended up making a
          lot of investment in Scheme because we were easily able to
          integrate that language with our application. &nbsp;Now, not only
          is Scheme used heavily within that company but many of their
          clients use it too to customize their application.</div>
        <div><br>
        </div>
        <div>This brings me to my question, is COG reentrant? &nbsp;If not,
          as the author of COG, I would think it relatively easy to
          restructure it to be so. &nbsp;Such a design capability can make a
          huge difference to COG's acceptance to many. &nbsp;It may even be
          the reason to switch to COG.</div>
        <div><br>
        </div>
        <div>Just sharing some thoughts. &nbsp;Thanks.</div>
        <div><br>
        </div>
        <div>Blake McBride</div>
      </span><br>
      <div class="gmail_quote">On Sun, Dec 2, 2012 at 7:55 PM, Eliot
        Miranda <span dir="ltr">&lt;<a moz-do-not-send="true"
            href="mailto:eliot.miranda@gmail.com" target="_blank">eliot.miranda@gmail.com</a>&gt;</span>
        wrote:<br>
        <blockquote class="gmail_quote" style="margin:0 0 0
          .8ex;border-left:1px #ccc solid;padding-left:1ex">...in&nbsp;<span
            style="font-size:14px;font-family:arial,sans-serif"><a
              moz-do-not-send="true"
              href="http://www.mirandabanda.org/files/Cog/VM/VM.r2628"
              target="_blank"><font color="#1155cc">http://www.mirandabanda.</font>org/files/Cog/VM/VM.r2628</a>.</span>
          <div>
            <font color="#000000" face="arial, sans-serif"><br>
            </font></div>
          <div><font color="#000000" face="arial, sans-serif">These fix
              a bug with pc mapping that could cause the Vm to crash on
              simple loops containing arithmetic on constants (e.g. 1
              to: 20 do: [:i| 1=1]). &nbsp;They also cause the instantiation
              primitives to pop all their arguments rather than assume
              their argument count is 0 or 1. &nbsp;More change info
              available in the directory.<span class="HOEnZb"><font
                  color="#888888"><br>
                </font></span></font><span class="HOEnZb"><font
                color="#888888">-- <br>
                best,
                <div>Eliot</div>
                <br>
              </font></span></div>
          <br>
          <br>
          <br>
        </blockquote>
      </div>
      <br>
      <br>
      <fieldset class="mimeAttachmentHeader"></fieldset>
      <br>
      <pre wrap="">
</pre>
    </blockquote>
    <br>
  </body>
</html>