Yes. Under SES, Object is shared by Alice and Bob (and Carol). But it is not a communications channel since it (and all its methods, etc) are all frozen.<br><br><div class="gmail_quote">On Fri, Jan 6, 2012 at 9:02 AM, François REMY <span dir="ltr"><<a href="mailto:fremycompany_pub@yahoo.fr">fremycompany_pub@yahoo.fr</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div dir="ltr">
<div dir="ltr">
<div style="font-size:12pt;font-family:'Segoe UI'">
<div>Sorry, I don’t understand how. [[boundFunctions]] is not readable from the 
script itself, only from the UA.</div>
<div> </div>
<div>To retreive an element from [[boundFunctions]] you need the original 
function used to create it. If you’ve recieved an instance to that function, you 
already have a communication channel, right? Or am I missing something?</div>
<div> </div>
<div style="BORDER-BOTTOM-COLOR:#000000;BORDER-LEFT:#000000 4px solid;BORDER-TOP-COLOR:#000000;PADDING-LEFT:5px;BORDER-RIGHT-COLOR:#000000;MARGIN-LEFT:5px">
<div style="font-size:small;font-style:normal;text-decoration:none;font-family:'Calibri';display:inline;font-weight:normal">
<div style="FONT:10pt tahoma">
<div><b>From:</b> <a title="erights@google.com" href="mailto:erights@google.com" target="_blank">Mark S. Miller</a> </div>
<div><b>Sent:</b> Friday, January 06, 2012 5:53 PM</div>
<div><b>To:</b> <a title="fremycompany_pub@yahoo.fr" href="mailto:fremycompany_pub@yahoo.fr" target="_blank">François REMY</a> </div>
<div><b>Cc:</b> <a title="brendan@mozilla.com" href="mailto:brendan@mozilla.com" target="_blank">Brendan Eich</a> ; <a title="andrea.giammarchi@gmail.com" href="mailto:andrea.giammarchi@gmail.com" target="_blank">Andrea Giammarchi</a> ; <a title="es-discuss@mozilla.org" href="mailto:es-discuss@mozilla.org" target="_blank">es-discuss</a> 
</div>
<div><b>Subject:</b> Re: Improving 
Function.prototype.bind</div></div></div></div><div><div class="h5">
<div style="BORDER-BOTTOM-COLOR:#000000;BORDER-LEFT:#000000 4px solid;BORDER-TOP-COLOR:#000000;PADDING-LEFT:5px;BORDER-RIGHT-COLOR:#000000;MARGIN-LEFT:5px">
<div style="font-size:small;font-style:normal;text-decoration:none;font-family:'Calibri';display:inline;font-weight:normal">On 
Fri, Jan 6, 2012 at 1:29 AM, François REMY <span dir="ltr"><<a href="mailto:fremycompany_pub@yahoo.fr" target="_blank">fremycompany_pub@yahoo.fr</a>></span> 
wrote:<br>
<div class="gmail_quote">
<blockquote style="BORDER-LEFT:#ccc 1px solid;MARGIN:0px 0px 0px 0.8ex;PADDING-LEFT:1ex" class="gmail_quote">Such an implementation would be very slow and not efficient, 
  because searching for a key in the "boundFunctions" weakmap would take time. 
  It can be a polyfill solution but a new implementation need something 
  better.<br><br>I think the solution would be to create an "invisible" 
  [[boundFunctions]] property for all objects containing a 
  dictionnary<weak<function>, weak<boundFunction>> of 
  already-bound functions on the object. The implementation of bind would then 
  be :<br><br>- if objToBind is not a reference, create a new boundFunction and 
  return it.<br>- if objToBind.[[boundFunctions]] don't exist, create it.<br>- 
  else, check if it contains a key for functionToBind //when you are processing 
  the dictionnary, remove obsolete entries you may find<br>  - if yes, 
  check if the weak reference is alive<br>  - if yes, returns the 
  boundFunction<br>- create a new boundFunction and store it into 
  objToBind.[[boundFunctions]]<br>- return the newly created 
  boundFunction<br><br>Would that be possible?<br></blockquote>
<div> </div>
<div>No, for the same reason. The mutable state you hung off this internal 
property creates an ambient communications channel.</div>
<div> </div>
<blockquote style="BORDER-LEFT:#ccc 1px solid;MARGIN:0px 0px 0px 0.8ex;PADDING-LEFT:1ex" class="gmail_quote"><br>François<br><br><br><br>-----Message d'origine----- 
  From: Brendan Eich<br>Sent: Friday, January 06, 2012 2:22 AM<br>To: Andrea 
  Giammarchi<br>Cc: Axel Rauschmayer ; François REMY ; es-discuss<br>Subject: 
  Re: Improving Function.prototype.bind<br>
  <div>
  <div><br>On Jan 5, 2012, at 4:47 PM, Andrea Giammarchi wrote:<br><br>
  <blockquote style="BORDER-LEFT:#ccc 1px solid;MARGIN:0px 0px 0px 0.8ex;PADDING-LEFT:1ex" class="gmail_quote">Guys, by any chance we can go back into the 
  topic?<br></blockquote><br>You'll have to polyfill Function.prototype.bind in 
  the current world of pre-ES5 browsers. Why not then go on to wrap it in a 
  memoizing version that uses a WeakMap if available (emulated with strong 
  keys/values array-based implementation if not)?<br><br>If you need this 
  machinery, it's all doable. If we should evolve a Harmony bind or betterBind 
  based on your experience and others, we can do that.<br><br>Right now the lack 
  of memoization is not a burning issue, from what I hear. You've raised it, I 
  think for the first time on es-discuss.<br><br>/be 
  <br>______________________________<u></u>_________________<br>es-discuss 
  mailing list<br><a href="mailto:es-discuss@mozilla.org" target="_blank">es-discuss@mozilla.org</a><br><a href="https://mail.mozilla.org/listinfo/es-discuss" target="_blank">https://mail.mozilla.org/<u></u>listinfo/es-discuss</a><br>
</div></div></blockquote></div><br><br clear="all">
<div> </div>-- <br>    Cheers,<br>    
--MarkM<br></div></div></div></div></div></div></div>
</blockquote></div><br><br clear="all"><div><br></div>-- <br>    Cheers,<br>    --MarkM<br>