Julian -<div><br></div><div>It was a lot more work to shape my head around the idea than it was to do the code :-)</div><div><br></div><div>John O&#39;Keefe [|], Principal Smalltalk Architect, Instantiations Inc.<br>
<br><br><div class="gmail_quote">On Tue, Jan 6, 2009 at 2:07 PM, Julian Fitzell <span dir="ltr">&lt;<a href="mailto:jfitzell@gmail.com">jfitzell@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;">
Oh, cool. Was it difficult to get working?<br>
<br>
The ANSI standard is confusing and ambiguous in places so it&#39;s not<br>
surprising that implementations still vary. The fact that all the<br>
implementations seem to require some modifications to make this work<br>
shows, if nothing else, that nobody else is implementing their own<br>
Exception Selectors, though. :)<br>
<br>
I just tried a simple test on GemStone and it looks like they will<br>
have to implement #try:on:do: at the moment to make it work. Though,<br>
from a quick glance, they may be able to tweak things so only the ANSI<br>
ExceptionSelector protocol is necessary.<br>
<br>
Julian<br>
<br>
On Tue, Jan 6, 2009 at 7:02 PM, John O&#39;Keefe<br>
&lt;<a href="mailto:wembley.instantiations@gmail.com">wembley.instantiations@gmail.com</a>&gt; wrote:<br>
&gt; Julian -<br>
&gt; OK, it now works on VA Smalltalk -- at least the SUnit tests think so :-)<br>
&gt; You are right that many of us implementors of ANSI don&#39;t always get it<br>
&gt; correct. &nbsp;Clearly the standard separates the idea of an &lt;exceptionSelector&gt;<br>
&gt; from the various other exception protocols.<br>
&gt; John O&#39;Keefe [|], Principal Smalltalk Architect, Instantiations Inc.<br>
&gt;<br>
&gt;<br>
&gt; On Thu, Jan 1, 2009 at 9:33 AM, Julian Fitzell &lt;<a href="mailto:jfitzell@gmail.com">jfitzell@gmail.com</a>&gt; wrote:<br>
&gt;&gt;<br>
&gt;&gt; Hi John,<br>
&gt;&gt;<br>
&gt;&gt; Darn... I was following the ANSI standard... ;) it says that an<br>
&gt;&gt; exception selector needs to implement #handles: and #, which we do on<br>
&gt;&gt; both the class and instance side. On most systems this would include<br>
&gt;&gt; the Exception class and instances of ExceptionSet. How does VA<br>
&gt;&gt; implement ExceptionSet if #on:do: is so restrictive?<br>
&gt;&gt;<br>
&gt;&gt; Lukas took a quick look at his VA image and says it looks like<br>
&gt;&gt; WAExceptionHandler might just need an implementation of #handles:do:<br>
&gt;&gt; added in the VA port but I don&#39;t have a Windows install handy to look<br>
&gt;&gt; myself. I added some tests in Seaside-Tests-Core-jf.32 that should<br>
&gt;&gt; help verify directly if it&#39;s working or not, though.<br>
&gt;&gt;<br>
&gt;&gt; Do you think it&#39;s a solvable problem on VA? I just looked at VW and it<br>
&gt;&gt; looks like they would need to implement #isExceptionHandler in their<br>
&gt;&gt; compatibility package.<br>
&gt;&gt;<br>
&gt;&gt; Dale, I haven&#39;t got Gemstone installed on this new laptop yet either.<br>
&gt;&gt; Do you foresee problems getting this to work on your end?<br>
&gt;&gt;<br>
&gt;&gt; Obviously if this is going to be a huge compatibility problem we<br>
&gt;&gt; should rethink but I think the implementation is cleaner this way<br>
&gt;&gt; otherwise.<br>
&gt;&gt;<br>
&gt;&gt; Julian<br>
&gt;&gt;<br>
&gt;&gt; On Wed, Dec 31, 2008 at 8:28 PM, John O&#39;Keefe<br>
&gt;&gt; &lt;<a href="mailto:wembley.instantiations@gmail.com">wembley.instantiations@gmail.com</a>&gt; wrote:<br>
&gt;&gt; &gt; Julian -<br>
&gt;&gt; &gt; I&#39;m back to work after a week and got a bad surprise.<br>
&gt;&gt; &gt; Seaside-Core-jf.349 and the associated changes to other packages has<br>
&gt;&gt; &gt; completely broken the VA Smalltalk port. &nbsp;Our implementation of<br>
&gt;&gt; &gt; Block&gt;&gt;#on:do: expects a class as its first argument (and in particular,<br>
&gt;&gt; &gt; the<br>
&gt;&gt; &gt; class must be Exception or a subclass of Exception). &nbsp;The same seems to<br>
&gt;&gt; &gt; be<br>
&gt;&gt; &gt; true of VW.<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; But with Seaside-Core-jf.349 #on:do: is getting a WAExceptionHandler<br>
&gt;&gt; &gt; class<br>
&gt;&gt; &gt; (or subclass of it) as the first argument &lt;exception selector&gt; and then<br>
&gt;&gt; &gt; with<br>
&gt;&gt; &gt; Seaside-Core-jf.353 #on:do: is getting an instance of WAExceptionHandler<br>
&gt;&gt; &gt; (or<br>
&gt;&gt; &gt; a subclass of it) as the first argument. &nbsp;In either case, we fall over<br>
&gt;&gt; &gt; because the WAExceptionHandler class/instance does not understand any of<br>
&gt;&gt; &gt; the<br>
&gt;&gt; &gt; messages sent by #on:do: to the &lt;exception selector&gt;.<br>
&gt;&gt; &gt; Since WAExceptionHandler is in the base, I assume it should be portable.<br>
&gt;&gt; &gt; I have reverted to Seaside-Core-lr.348 and Seaside-Development-lr.53 for<br>
&gt;&gt; &gt; the<br>
&gt;&gt; &gt; time being and things seem to be working OK again.<br>
&gt;&gt; &gt; John O&#39;Keefe [|], Principal Smalltalk Architect, Instantiations Inc.<br>
&gt;&gt; _______________________________________________<br>
&gt;&gt; seaside-dev mailing list<br>
&gt;&gt; <a href="mailto:seaside-dev@lists.squeakfoundation.org">seaside-dev@lists.squeakfoundation.org</a><br>
&gt;&gt; <a href="http://lists.squeakfoundation.org/mailman/listinfo/seaside-dev" target="_blank">http://lists.squeakfoundation.org/mailman/listinfo/seaside-dev</a><br>
&gt;<br>
&gt;<br>
&gt; _______________________________________________<br>
&gt; seaside-dev mailing list<br>
&gt; <a href="mailto:seaside-dev@lists.squeakfoundation.org">seaside-dev@lists.squeakfoundation.org</a><br>
&gt; <a href="http://lists.squeakfoundation.org/mailman/listinfo/seaside-dev" target="_blank">http://lists.squeakfoundation.org/mailman/listinfo/seaside-dev</a><br>
&gt;<br>
&gt;<br>
_______________________________________________<br>
seaside-dev mailing list<br>
<a href="mailto:seaside-dev@lists.squeakfoundation.org">seaside-dev@lists.squeakfoundation.org</a><br>
<a href="http://lists.squeakfoundation.org/mailman/listinfo/seaside-dev" target="_blank">http://lists.squeakfoundation.org/mailman/listinfo/seaside-dev</a><br>
</blockquote></div><br></div>