<div dir="ltr"><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div>well, the problem is that we're in a bit more difficult situation that Lua.. in Lua there's no processes/contexts..</div><div>and
 if we would want implement an external message send i.e.  send message -
 get result, things not so straightforward as in Lua.</div><div>it's all because it was never designed to be run in a host environment and be open from that end.</div><div>that's why it is much easier to implement FFI, that C -> smalltalk API.<br></div></blockquote><div>Currently, I am going to focus on making a standard interface for initializing the VM, loading the image, passing the command line arguments, running the interpreter and shutting down. This seems easy to do, and it allows me to unify the platform specific versions of the VM.<br><br></div><div>For more complicated stuffs such as calling Smalltalk from C, or a standard interface for defining primitives in C( for doing things such as moving unessential VM plugins outside of the main VM source code tree). We should have a proper discussion on the mailing list.<br><br></div><div>My priority with removing the windowing code is getting OSWindow working well in Windows. Currently it is having conflicts with the main loop provided by the VM, which makes it unusable.<br></div></div><div class="gmail_extra"><br><div class="gmail_quote">2016-11-29 14:22 GMT-03:00 Igor Stasenko <span dir="ltr"><<a href="mailto:siguctua@gmail.com" target="_blank">siguctua@gmail.com</a>></span>:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"> <br><div dir="ltr"><br><div class="gmail_extra"><br><div class="gmail_quote">On 29 November 2016 at 14:43, Ben Coman <span dir="ltr"><<a href="mailto:btc@openinworld.com" target="_blank">btc@openinworld.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"> <br><div dir="ltr"><br><div class="gmail_extra"><br><div class="gmail_quote">On Thu, Nov 24, 2016 at 10:06 PM, Ronie Salgado <span dir="ltr"><<a href="mailto:roniesalg@gmail.com" target="_blank">roniesalg@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"> <div dir="ltr"><div><div><div><div><div><div><div><div>It is still needed to define a proper interface for embedding the VM. This interface should be a single .h file, with the highest level of abstraction possible. There are some other issues such as potential name clashes, and the fact that the VM symbols are public by default. At the bare minimum, it has to provide functions for initializing the VM, passing command line arguments, loading an image, running the image, and shutting down.<br></div></div></div></div></div></div></div></div></div></blockquote><div><br></div><div>I don't know if its really suitable, but since Lua is the incumbent embedded gaming language, perhaps echoing it would make it easier to substitute ours for theirs.    </div><div><a href="https://www.lua.org/pil/24.2.html" target="_blank">https://www.lua.org/pil/24.2.h<wbr>tml</a> </div><div><br></div><div>cheers -ben</div></div><br></div></div></blockquote><div><br></div><div>well, the problem is that we're in a bit more difficult situation that Lua.. in Lua there's no processes/contexts..</div><div>and if we would want implement an external message send i.e.  send message - get result, things not so straightforward as in Lua.</div><div>it's all because it was never designed to be run in a host environment and be open from that end.</div><div>that's why it is much easier to implement FFI, that C -> smalltalk API. </div></div><br><br clear="all"><div><br></div>-- <br><div class="m_-1574397147822212512gmail_signature" data-smartmail="gmail_signature">Best regards,<br>Igor Stasenko.</div>
</div></div>
<br></blockquote></div><br></div>