Re: D3/Linux program abort
- From: "Gandalf" <scott@xxxxxxxxxxxx>
- Date: 5 Mar 2007 08:44:03 -0800
On Mar 4, 10:03 pm, Tony Gravagno
<address.is.in.po...@xxxxxxxxxxxxxxxxxxxxxx> wrote:
"mwright" wrote:
I'm hoping for a MUCH better error msg next time!!!! :^)
Glad the issue was resolved, Mark.
I have discussions with developers all the time about this sort of
thing. The fire is out and the trucks have left the scene, but the
same sort of fire could occur anywhere. Most developers are
interested in putting out the fire and getting on to the next problem,
rather than solving the real problem. No error message, no problem,
right? No, find out what allowed someone to walk into a cryptic error
and don't allow the code to do that.
I frequently petition my vendors to get their software to recognize
when something simple has gone wrong, and to provide an appropriate
error message so that we can get through diagnostics quickly and get
on with our work. For example, don't give us a core dump; recognize
that the return value of that last call was a negative number and
display an error message, rather than continuing on into code that
can't handle that value.
There's also the "techno error" that developers tend to display when
something in English would be just as appropriate:
"KQR89.Z: obj unassgd" makes no sense, where "Value Name cannot be
null" makes much more sense. I'll pay 2 cents for the extra vowel but
I'd much prefer a real message.
And since we're here, I know some people are hesitent to display any
sort of error at all. QM provides a flag to disable warnings and
Caché doesn't display "var unassigned" errors at all. C'mon folks,
when there's a problem we need to know about it!
Well, when we first started on CachéMVBasic, it caused a run-time
abort when accessing undefined
variables, just like the default for CachéObjectScript.
I also hate to have errors hidden from me...
However, it turned out that many important MultiValue customers of
ours ran into problems with that,
because there applications often hit unassigned variables, and
depended on the UniVerse behavior
of displaying a warning message, but returning a empty string and
continuing.
In order for their applications to run, we had to change things so
that CachéMVBasic also just returns
a "" and continues.
I plan on changing this in the future, so that this behavior is
switchable (but haven't gotten around to it quite yet...
I've only been working an average of 80 hours a week for the last 3+
years on this project as it is! :-( )
Scott
P.S. I hope you will appreciate some of the other features of Caché,
you can compile and check the validity of
your PROCs, your I-types, and conversion/correlative codes in MVBasic
programs and in dictionaries, and catch
a lot of errors that you might not have even been aware were lurking
in your application.
.
- Follow-Ups:
- Re: D3/Linux program abort
- From: Bill H
- Re: D3/Linux program abort
- References:
- Re: D3/Linux program abort
- From: Chandru Murthi
- Re: D3/Linux program abort
- From: mwright
- Re: D3/Linux program abort
- From: mwright
- Re: D3/Linux program abort
- From: Tony Gravagno
- Re: D3/Linux program abort
- Prev by Date: Re: SSELECT Statement
- Next by Date: Re: D3/Linux program abort
- Previous by thread: Re: D3/Linux program abort
- Next by thread: Re: D3/Linux program abort
- Index(es):
Relevant Pages
|