<div dir="ltr"><div dir="ltr"><br></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Sun, May 3, 2020 at 2:59 AM Robert <<a href="mailto:robert.withers@pm.me">robert.withers@pm.me</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div>
<p>Hi Clément,</p>
<div>On 5/2/20 2:47 PM, Clément Béra wrote:<br>
</div>
<blockquote type="cite">
<div dir="ltr">
<div dir="ltr"><br>
</div>
<br>
<div class="gmail_quote">
<div dir="ltr" class="gmail_attr">On Sat, May 2, 2020 at 8:06
PM Robert <<a href="mailto:robert.withers@pm.me" target="_blank">robert.withers@pm.me</a>> wrote:<br>
</div>
<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
<div>
<p><br>
</p>
<div>On 5/1/20 2:59 PM, Clément Béra wrote:<br>
</div>
<blockquote type="cite">
<div dir="ltr">The Hydra VM from Igor was doing exactly
that.</div>
</blockquote>
Stellar! Could we reintegrate with the latest
squeak.cog.spur?<br>
</div>
</blockquote>
<div><br>
</div>
<div>Hydra was a fork of the pre-stack VM. I don't know where
is the code. Igor may be able to answer. Ask him.</div>
</div>
</div>
</blockquote>
<p>Do you have Igor's email? I will ask.</p></div></blockquote><div><a href="mailto:siguctua@gmail.com">siguctua@gmail.com</a> <br></div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div>
<p><br>
</p>
<blockquote type="cite">
<div dir="ltr">
<div class="gmail_quote">
<div>As Tim said, it's not clear there is a high benefit from
running many image on 1 VM vs multiple images, each on their
VM. One advantage could be the speed of communication
between the images. However, it's possible to have a byte
array on a Posix Shared Memory section (Pavel had made some
FFI bindings to do that) that is shared between multiple
images. I'm sure with a clever design one could share more
than just a byte array. With a shared memory section and
external semaphores, it's not clear there are good use-cases
that would require multiple images on 1 VM. <br>
</div>
</div>
</div>
</blockquote>
I see your and Tim's point here. When asked I have always reported
that the way to take advantage of multiple cores is to run multiple
images on their own VM. The realm of actor mobility I have not
worked on. <br>
<br>
<p>Actor Mobility: I think it works just like a eukaryotic cell.
with proteins produced through the ribosome and ER, then packaged
for delivery with a network motif, and sent through the Golgi
Apparatus to be delivered then unpackaged. Normally an Actor is
not passByCopy, but a remoteERef is sent abroad. To convert a
passByReference object into a passByCopy, serialize it into bytes
and wrap it in a package, which is passByCopy. Send it forth,
unpackaged remotely, it becomes a passByReference Actor again. Use
this to communicate between VM/image/Vat/eventLoop.</p>
<p><br>
</p>
<blockquote type="cite">
<div dir="ltr">
<div class="gmail_quote">
<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
<div>
<blockquote type="cite">
<div dir="ltr">
<div>The Actor model in Newspeak is also somewhat
similar to that, though part of the image is shared
between threads.<br>
</div>
</div>
</blockquote>
<p>I believe the Newspeak Actors are implemented with
local capabilities, from ELib, just as my
CapabilitiesLocal package. DoIt:</p>
<blockquote>
<p>Installer ss project: 'Cryptography'; install:
'CapabilitiesLocal'. </p>
</blockquote>
<p>works. Both implement a ELib Promise system with async
resolution and resolved promise reactor invocation.</p>
<p>Would you be able to say a few words about their use of
shared memory, please? As well, what could you mention
about their use of promises, regarding Ease of use,
understandable code, tips & tricks with promises?<br>
</p>
</div>
</blockquote>
<div><br>
</div>
<div>I think Ryan could answer in a better way.</div>
</div>
</div>
</blockquote>
<p>Did you mean to copy Ryan? I would definitely like to hear of
NewSpeak in this regard.</p></div></blockquote><div><br></div><div>Ask him directly. He will answer better. </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div>
<p><br>
</p>
<blockquote type="cite">
<div dir="ltr">
<div class="gmail_quote">
<div>My understand is that NewSpeak have value objects, which
are immutable, and such objects can be shared between
actors, including classes, methods and so on. </div>
<div>Not sure about promise. Ryan, can you answer?</div>
</div>
</div>
</blockquote>
<p>Value objects are immutable, thus sharable. Hmmm. Thinks about
that.</p>
<p>K, r<br>
</p>
<p><br>
</p>
<blockquote type="cite">
<div dir="ltr">
<div class="gmail_quote">
<div><br>
</div>
<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
<div>
<p> </p>
<p>K, r<br>
</p>
<blockquote type="cite">
<div dir="ltr">
<div>
<div><br>
</div>
<div>Not sure what is the status of these projects
though.</div>
</div>
</div>
<br>
<div class="gmail_quote">
<div dir="ltr" class="gmail_attr">On Wed, Apr 29, 2020
at 8:43 PM Robert <<a href="mailto:robert.withers@pm.me" target="_blank">robert.withers@pm.me</a>>
wrote:<br>
</div>
<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
<div>I have not read about this anywhere I can
remember. Would it be possible to run two images
on one VM?</div>
<div><br>
</div>
Preggo,<br>
<div>Robertotini</div>
<div><br>
</div>
<div id="gmail-m_8963528571173531804gmail-m_3799447617685750289gmail-m_-7738423786012633942protonmail_mobile_signature_block">
<div>Sent from ProtonMail Mobile</div>
</div>
</blockquote>
</div>
<br clear="all">
<div><br>
</div>
-- <br>
<div dir="ltr">
<div dir="ltr">
<div>
<div dir="ltr">
<div dir="ltr"><span style="font-size:12.8px">Clément
Béra<br>
</span><span style="color:rgb(0,0,238)"><a href="https://clementbera.github.io/" target="_blank">https://clementbera.github.io/</a></span>
<div style="font-size:12.8px"><a href="https://clementbera.wordpress.com/" target="_blank">https://clementbera.wordpress.com/</a></div>
</div>
</div>
</div>
</div>
</div>
</blockquote>
<pre cols="72">--
Kindly,
Robert</pre>
</div>
</blockquote>
</div>
<br clear="all">
<div><br>
</div>
-- <br>
<div dir="ltr">
<div dir="ltr">
<div>
<div dir="ltr">
<div dir="ltr"><span style="font-size:12.8px">Clément
Béra<br>
</span><span style="color:rgb(0,0,238)"><a href="https://clementbera.github.io/" target="_blank">https://clementbera.github.io/</a></span>
<div style="font-size:12.8px"><a href="https://clementbera.wordpress.com/" target="_blank">https://clementbera.wordpress.com/</a></div>
</div>
</div>
</div>
</div>
</div>
</div>
</blockquote>
<pre cols="72">--
Kindly,
Robert</pre>
</div></blockquote></div><br clear="all"><div><br></div>-- <br><div dir="ltr" class="gmail_signature"><div dir="ltr"><div><div dir="ltr"><div dir="ltr"><span style="font-size:12.8px">Clément Béra<br></span><span style="color:rgb(0,0,238)"><a href="https://clementbera.github.io/" target="_blank">https://clementbera.github.io/</a></span><div style="font-size:12.8px"><a href="https://clementbera.wordpress.com/" target="_blank">https://clementbera.wordpress.com/</a></div></div></div></div></div></div></div>