<div dir="ltr">Juan,<div><br></div><div>It looks like 3923 still alters Exception behavior which may break some existing code.  (granted, in rare situations)  I was working on adding a #nonLocalReturn: method and nothing was working so I went back to a clean 3923 image and immediately saw why.  To reproduce:</div><div><br></div><div>1) Download <a href="https://github.com/pbella/OMeta-Cuis">https://github.com/pbella/OMeta-Cuis</a></div><div>2) Open a fresh 3923 image</div><div>3) Be sure to CLOSE the Transcript window for performance reasons.  There will be a <cough> few warning messages emitted.  (~36k of them[1])</div><div>4) Open a file browser</div><div>5) Navigate to the repo directory and install <a href="http://OMeta2Tests.pck.st">OMeta2Tests.pck.st</a></div><div>6) Open a Browser window</div><div>7) Navigate to OMeta2>>char (browsing any OMeta method will probably do it since, in order to do syntax highlighting for the browser, it has to fire off an OMeta parser which in turn uses exception blocks with non-local returns extensively)</div><div><br></div><div>At this point your image should hang while working its way to OOM.  I'd venture that one or more of OMeta's assumptions about exceptions are no longer valid.  OMeta is my problem to fix but I just wanted to make you aware that even the 'quieter' code in 3923 can have both performance and functional impact.</div><div><br></div><div>[1] A attempted full rebuild of my dev image resulted in >2M messages before I killed it and disabled the message.</div><div><br></div><div>Thanks,</div><div>Phil</div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Mon, Oct 14, 2019 at 8:41 AM Juan Vuletich via Cuis-dev <<a href="mailto:cuis-dev@lists.cuis.st">cuis-dev@lists.cuis.st</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">Hi Folks,<br>
<br>
As you have already seen in a separate thread, yesterday I pushed <br>
changes to Exceptions. While the changes are valuable, especially in the <br>
discussion they have triggered, and in showing an opportunity to improve <br>
non-trivial parts of the system, I pushed them without required previous <br>
discussion, and a better analysis of the immediate negative consequences <br>
in code breakage. I made this mistake all by myself, in a rush to try to <br>
get the code out even if I didn't have the time to do it in a better <br>
way. I apologize for this.<br>
<br>
I also want to thank you all, especially Hernán, Phil, and Andrés, for <br>
the constructive attitude in which you engaged in the relevant <br>
discussion on how to better deal with the issue, instead of focusing on <br>
the annoyance, I'm sure we'll be able to improve the system after this <br>
discussion.<br>
<br>
To avoid code breakage while we work out what we collectively want to do <br>
with the method-returns-in-exception-handlers issue, I just pushed <br>
update #3923 that allows them again, and just logs a note to the <br>
Transcript. I did this instead of taking back all the changes because <br>
they are not trivial, and they will be useful for trying different <br>
approaches.<br>
<br>
Thanks,<br>
<br>
-- <br>
Juan Vuletich<br>
<a href="http://www.cuis-smalltalk.org" rel="noreferrer" target="_blank">www.cuis-smalltalk.org</a><br>
<a href="https://github.com/Cuis-Smalltalk/Cuis-Smalltalk-Dev" rel="noreferrer" target="_blank">https://github.com/Cuis-Smalltalk/Cuis-Smalltalk-Dev</a><br>
<a href="https://github.com/jvuletich" rel="noreferrer" target="_blank">https://github.com/jvuletich</a><br>
<a href="https://www.linkedin.com/in/juan-vuletich-75611b3" rel="noreferrer" target="_blank">https://www.linkedin.com/in/juan-vuletich-75611b3</a><br>
@JuanVuletich<br>
<br>
-- <br>
Cuis-dev mailing list<br>
<a href="mailto:Cuis-dev@lists.cuis.st" target="_blank">Cuis-dev@lists.cuis.st</a><br>
<a href="https://lists.cuis.st/mailman/listinfo/cuis-dev" rel="noreferrer" target="_blank">https://lists.cuis.st/mailman/listinfo/cuis-dev</a><br>
</blockquote></div>