<div class="gmail_quote">On Tue, Jun 30, 2009 at 3:00 PM, Eliot Miranda <span dir="ltr">&lt;<a href="mailto:eliot.miranda@gmail.com">eliot.miranda@gmail.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">

<br><div class="gmail_quote"><div> But as I&#39;ve said earlier in the thread the extensional approach has problems when it comes to managing multiple packages that can overlap (as I think s inevitable in imperfect complex systems).  </div>

</div></blockquote><div><br></div><div>I realize this thread is more concerned with the here and the now, but doesn&#39;t this problem go away entirely in a system like Newspeak?  When you can have modules of code co-resident and active at the same time, wouldn&#39;t you just create a new version of some package on which you depend rather than patch it with extension methods you define in your own package?  Your code would happily use your version of the package while others happily use the unmodified version.  I can see a potential need in cases where a body of code is designed to interface with some already present service (for example, a phone dialer application designed to use an AddressBook service).  But, in such a system, you wouldn&#39;t want to allow monkey patching anyway out of security concerns (if you could override the AddressBook interface, your code could potentially access information that the owner didn&#39;t want your code to access).</div>

<div><br></div><div>- Stephen </div></div>