<html><head><meta http-equiv="content-type" content="text/html; charset=utf-8"></head><body dir="auto"><div><span></span></div><div><meta http-equiv="content-type" content="text/html; charset=utf-8"><div>I was thinking that handle may be a capability ref, mutable in the scope of the ref state machine.<br></div><div><br>Thank you,<br><div>Robert</div></div><div><br><div><br></div>On Jan 28, 2014, at 2:36 PM, Eliot Miranda &lt;<a href="mailto:eliot.miranda@gmail.com">eliot.miranda@gmail.com</a>&gt; wrote:<br><br></div><blockquote type="cite"><div><div dir="ltr"><br><div class="gmail_extra"><br><br><div class="gmail_quote">On Tue, Jan 28, 2014 at 1:08 PM, Colin Putney <span dir="ltr">&lt;<a href="mailto:colin@wiresong.com" target="_blank">colin@wiresong.com</a>&gt;</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 class="im">On Tue, Jan 28, 2014 at 3:54 PM, Eliot Miranda &lt;<a href="mailto:eliot.miranda@gmail.com">eliot.miranda@gmail.com</a>&gt; wrote:<br>

<br>
&gt; <a href="https://plus.google.com/+KentonVarda/posts/GRJ4h4w2UN9" target="_blank">https://plus.google.com/+KentonVarda/posts/GRJ4h4w2UN9</a>? &nbsp;Or am I being<br>
&gt; cynical?<br>
<br>
</div>Yeah, I think that's what he was talking about. It's hard to see how<br>
dynamic languages could use Cap'n Proto, because they don't tend to<br>
give enough low-level control over memory layout in the heap.<br></blockquote><div><br></div><div>Wouldn't pinning be enough? &nbsp;No, because one needs to intermix binary data and objects. &nbsp;But if one added a ref type, or some object handle type, so there's just one level of indirection from a handle in the protobuf and an object, that might get far enough no?</div>
<div><br></div><div>The alternative would be to add struct support to Spur which might be doable. &nbsp;But it's a lot of work for a rather specific application. &nbsp;Anyway, I'm open to others experimenting on this.</div>
<div><br></div><div>Reminds me of work Tony Mann at Harlequin did or described to me, which again is reminiscent of Digitalk's object layout. &nbsp;The idea is to have the class reference in an object (even if this is an index into a table) not point directly to the class object, but to refer to some intermediate, possibly hidden, structure.</div>
<div><br></div><div>In The Harlequin case this structure included code that would be run by the GC to traverse the object, which is how the system supports heterogenous structures, and saves on a size field (except for variable-sized objects).</div>
</div><div class="gmail_extra"><br></div>In the Digitalk case the structure is a method dictionary, which allows the system to support&nbsp;easily&nbsp;instance-specific behaviours. &nbsp;(Forgive the digression).<br>-- <br>best,<div>Eliot</div>

</div></div>
</div></blockquote><blockquote type="cite"><div><span></span><br></div></blockquote></div></body></html>