<div dir="ltr"><br><div class="gmail_extra"><br><br><div class="gmail_quote">On Wed, Jan 29, 2014 at 10:59 AM, Chris Muller <span dir="ltr">&lt;<a href="mailto:asqueaker@gmail.com" target="_blank">asqueaker@gmail.com</a>&gt;</span> wrote:<br>
<div>&nbsp;</div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="im"><span style="color:rgb(34,34,34)">It happens when a message is sent to the Proxy, so it can&#39;t be THAT unrelated.</span></div>
</blockquote><div><br></div><div>The problem I ran into was triggered by cleaning out references to obsolete behaviours. This is a low-level piece of the core system. It had nothing to do with Monticello, and took several days of debugging, with help from several people on the list to figure out what was going on.</div>
<div><br></div><div>The thing is, #become: is an exotic tool that should be kept near the bottom of the tool chest, on the same shelf as thisContext and dynamically-created classes. Yes, it&#39;s very powerful, but with that power comes responsibility. If we use that tool in a ubiquitous part of the system like Monticello, we&#39;re asking every Squeak developer to take on this responsibility, even though they didn&#39;t pick up the tool themselves.</div>
<div><br></div><div>Here&#39;s another way to look at it: for the benefit they provide, proxies come with a cost, in complexity and unpredictability. You don&#39;t notice it much because you&#39;re paying that cost anyway, but most of us don&#39;t use Magma&mdash;or anything similar&mdash;in our day to day work. For us, the incremental cost of this change to Monticello is significant.</div>
<div><br></div><div>Colin</div></div></div></div>