<div dir="ltr">On second thought, I think that you'd probably want to reload a file that implements a tool and have that swap out the mixin, so I've added the capability to do that with a commit just now.<div class="gmail_extra">
<br></div><div class="gmail_extra">hth,</div><div class="gmail_extra">Robby<br><br><div class="gmail_quote">On Fri, Apr 5, 2013 at 10:45 PM, Robby Findler <span dir="ltr"><<a href="mailto:robby@eecs.northwestern.edu" target="_blank">robby@eecs.northwestern.edu</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">Okay, I've made a first attempt at this (just now pushed to git). I added the ability to add new mixins (via the drracket:get/extend:extend-* functions) at any time (as long as you call a function to explicitly enable that feature). DrRacket makes no attempt to adjust any existing objects that have been created but, for the most part, as long as you create a new frame after doing your new extensions, things should work, I think.<div>
<br></div><div>Also, if you set the PLTDRRPEL environment variable then you'll get a REPL. There are docs here in this commit:</div><div><br></div><div><a href="http://git.racket-lang.org/plt/commit/77163fe8d16d48d98b3a6b47df2af571e8fbbdcc" target="_blank">http://git.racket-lang.org/plt/commit/77163fe8d16d48d98b3a6b47df2af571e8fbbdcc</a><br>
</div><div><br></div><div>Please let me know if this seems helpful.</div><span class="HOEnZb"><font color="#888888"><div><br></div><div>Robby</div><div><br></div></font></span></div><div class="gmail_extra"><br><br><div class="gmail_quote">
<div class="im">On Fri, Mar 22, 2013 at 1:41 PM, Nick Main <span dir="ltr"><<a href="mailto:david.nick.main@gmail.com" target="_blank">david.nick.main@gmail.com</a>></span> wrote:<br>
</div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div><div class="h5"><span style="color:rgb(34,34,34);font-size:13px;font-family:arial,sans-serif">Is there a way to develop DrRacket extensions in the same process as the primary DrRacket ?</span><div style="color:rgb(34,34,34);font-size:13px;font-family:arial,sans-serif">
The fact that the mixin extension mechanism has already been "sealed" appears to prevent that.</div><div style="color:rgb(34,34,34);font-size:13px;font-family:arial,sans-serif">
Is there a way to create a new "context" for creating extended DrRacket classes within the same process ?</div><div style="color:rgb(34,34,34);font-size:13px;font-family:arial,sans-serif">
<div><br>I also asked this question on Stackoverflow: <a href="http://stackoverflow.com/questions/15561215/developing-drracket-extensions-within-the-same-process" style="color:rgb(17,85,204)" target="_blank">http://stackoverflow.com/questions/15561215/developing-drracket-extensions-within-the-same-process</a></div>
<span><font color="#888888">
<div><br></div><span><font color="#888888"></font></span></font></span></div><span><font color="#888888"><span style="color:rgb(34,34,34);font-size:13px;font-family:arial,sans-serif"><font color="#888888"><div>
<br></div><div>--Nick Main</div></font></span>
</font></span><br></div></div><div class="im">____________________<br>
Racket Users list:<br>
<a href="http://lists.racket-lang.org/users" target="_blank">http://lists.racket-lang.org/users</a><br>
<br></div></blockquote></div><br></div>
</blockquote></div><br></div></div>