Jim, "I know what a C++ object is better than you do."
That may well be the case but OpenSimulator is written in C# not C++ On Mon, Apr 21, 2014 at 10:57 AM, Jim Williams <[email protected]> wrote: > No! The lower level code should return what happened, and there is > nothing which is "exceptional" except some children; which is the right way > to view the notion of exceptions -- dim-witted. Given that the stupid idea > was invented, I must admit that sometimes there is no real choice but to > accept the crappy code and propagate the crap -- but there is no reason to > do so willingly. The try/catch scheme is bad practice. How to deal with > the crap that is out there is a matter which can be discussed, but not with > the notion that is was done right to begin with. > > It goes along with thinking that objects are somehow special. Took me > years to figure out that objects were simply good programming practice with > a bit of crap tossed in to confuse people. (BTW-- I worked at Object > Design. I know what a C++ object is better than you do.) > > > > > On Mon, Apr 21, 2014 at 11:13 AM, Mike Chase < > [email protected]> wrote: > >> That's a shame but I understand. I don't understand the resistance to >> what I guess I consider good programming practice because there seems to be >> concern about "fixing" code that might be effected. IMO lower level code >> should throw exceptions if something exceptional happens and let the upper >> levels decide to retry or report the error. >> >> >> >> Mike >> >> >> >> *From:* [email protected] [mailto: >> [email protected]] *On Behalf Of *Oren Hurvitz >> *Sent:* Monday, April 21, 2014 10:54 AM >> *To:* [email protected] >> *Subject:* Re: [Opensim-dev] Error detection when storing an asset >> >> >> >> James, the only philosophical concern that I've heard is a desire to hide >> errors and present a false facade of 100% success to users. This was >> obfuscated by an attempt to claim that the errors could someday be fixed >> automatically, but that doesn't actually happen in today's OpenSim so it's >> not a valid point. Since I respect my users and value their time I have to >> let them know when I've failed to complete an action that they requested, >> so I reject this approach. >> >> A second possible objection is a practical one: will propagating >> exceptions cause other parts of the code, unrelated to the assets service, >> to fail? I don't know the answer to that, but I still refuse to pretend >> success in cases where I've failed. >> >> For these reasons, I have changed Kitely to propagate exceptions thrown >> in the communications system; it is already done. If this causes problems >> then I will see them and fix them. But in view of the surprising and >> vigorous opposition to this change I will not be contributing it to OpenSim. >> >> Oren >> >> >> >> On Mon, Apr 21, 2014 at 5:43 PM, James Stallings II < >> [email protected]> wrote: >> >> Parhaps it would be interesting to hear whether Oren has obtained to some >> elegant way of addressing these concerns. >> >> >> >> Cheers >> >> >> >> On Sun, Apr 20, 2014 at 11:08 PM, Trinity <[email protected]> wrote: >> >> Im in mels camp on this one. >> >> Trinity Bays >> >> >> >> On Sat, Apr 19, 2014 at 4:14 AM, Melanie <[email protected]> wrote: >> >> These "other places" are what I'm worried about. There are a lot of them >> and each of them would need to have code added. Exception handling code is >> one of the worst types of code because the "try" is a scope, so locals >> devlared in the try, like bool result = MethodToTry(); will have to be >> split up into declaring the bool outside the scope and assigning it inside >> - incredibly ugly for code that wants to be reference and teaching code as >> well as a functioning system. >> >> - Melanie >> >> >> On 19 Apr 2014, at 08:02, Oren Hurvitz <[email protected]> wrote: >> >> My fix has two parts. >> >> The first is that the Store() operation needs to understand failures >> correctly. There has been a consensus that it should, so I'll add that to >> Git. >> >> The second is that MakeRequest() should propagate exceptions, instead of >> just returning null (which is what it does now). So far there have been 3 >> votes for this (me, Mike Chase, and Justin) and 2 against (Melanie, Diva). >> That's very close; does anyone else want to make their position known? >> >> Next, I see that there's confusion in this discussion about what happens >> in Store() if MakeRequest() throws an exception. And the answer is, nothing >> will be different, because Store() already correctly catches exceptions. >> That is precisely how it should work: the low-level communications system >> reports when it has failed, and higher levels (that know the business value >> of the call) decide how to handle it. However, MakeRequest() is called from >> other places as well and they might need to be changed to handle exceptions >> better. >> >> _______________________________________________ >> Opensim-dev mailing list >> [email protected] >> http://opensimulator.org/cgi-bin/mailman/listinfo/opensim-dev >> _______________________________________________ >> Opensim-dev mailing list >> [email protected] >> http://opensimulator.org/cgi-bin/mailman/listinfo/opensim-dev >> >> >> >> >> _______________________________________________ >> Opensim-dev mailing list >> [email protected] >> http://opensimulator.org/cgi-bin/mailman/listinfo/opensim-dev >> >> >> >> >> >> -- >> >> =================================== >> >> http://osgrid.org/ >> http://simhost.com >> http://twitter.com/jstallings2 >> >> >> _______________________________________________ >> Opensim-dev mailing list >> [email protected] >> http://opensimulator.org/cgi-bin/mailman/listinfo/opensim-dev >> >> >> >> >> -- >> >> Oren Hurvitz >> VP R&D >> Kitely Ltd. >> >> Email: [email protected] >> >> _______________________________________________ >> Opensim-dev mailing list >> [email protected] >> http://opensimulator.org/cgi-bin/mailman/listinfo/opensim-dev >> >> > > > -- > No essence. No permanence. No perfection. Only action. > > _______________________________________________ > Opensim-dev mailing list > [email protected] > http://opensimulator.org/cgi-bin/mailman/listinfo/opensim-dev > > -- =================================== http://osgrid.org/ http://simhost.com http://twitter.com/jstallings2
_______________________________________________ Opensim-dev mailing list [email protected] http://opensimulator.org/cgi-bin/mailman/listinfo/opensim-dev
