From: Roedy Green on
On Thu, 25 Feb 2010 10:50:42 -0500, Lew <noone(a)lewscanon.com> wrote,
quoted or indirectly quoted someone who said :

>Come on, guys, Jcheeze! The OP clearly meant crash of his program, not the JVM.

I would say most programmers reserve the word "crash" for the JVM
blowing up, not just an unhandled exception. Dying with an unhandled
exception is relatively orderly behaviour compared with unpredictable
crash behaviour like the old C days when you wrote off the end of an
array, and clobbered code that was later executed.

The word "hang" implies the program freezes and is unresponsive to
mouse or keyboard input.

What would you call an "unhandled exception"? Maybe just a "failure"?

"Didn't work" is a sloppy term that could even be used for a program
that ran to completion, but gave a result different from expected.

There is the very orderly System.exit( 1 );

If you are into it, let's tighten up the vocabulary, create history,
and I will document the new precise meanings, then Lew can have fun
razzing the newbies when they use the terms improperly.

I fiercely guard the term "leak" and insist on "packratting" or
"loitering" because I want people to understand that Java can't have
leaks in the C++ sense, so long as the JVM is bug free.
--
Roedy Green Canadian Mind Products
http://mindprod.com

The major difference between a thing that might go wrong and a thing that cannot possibly go wrong is that when a thing that cannot possibly go wrong goes wrong it usually turns out to be impossible to get at or repair.
~ Douglas Adams (born: 1952-03-11 died: 2001-05-11 at age: 49)
From: Lew on
Peter Duniho wrote:
> Have you in fact helped the querent? After all, you stated that a
> NullPointerException always terminates the program. Even ignoring that

Nope, I said uncaught exceptions terminate the program. Very different.

> you've arbitrarily chosen a different definition of "crash" than Roedy
> chose, however more likely that definition might be to be correct it
> still remains that your conclusion wasn't precisely correct.

In what way? Name one example where an uncaught exception does not crash the
program.

> That is, I will (pedantically) point out that you claimed that
> "[exceptions] that YOU catch and deal with properly will not [cause
> termination of a program]". Clearly implying that exceptions YOU do NOT
> catch and deal with property WILL cause termination of the program.

You added that implication. I never stated it. Also, it is clear that if YOU
use a library that catches an exception, then YOU are responsible that it got
caught, so, pedantically speaking, YOU are still the one catching it by dint
of relying on the library's behavior. So even if the implication you claim is
so clear, it's still correct.

> Except that there are examples of areas of the Java API where exceptions
> are caught on your behalf, not by YOU.

To be pedantic, I said, "The answer is that uncaught exceptions will cause
termination of a program. Ones you catch and deal with properly will not. "

I did not say, "Exceptions that YOU catch", as you misquoted. I completely
did not talk about the corner case where someone else catches the exception.

> (Emphasis added above for clarity)

It's not adding clarity if you change the meaning of what I said by adding
words that weren't even there, then emphasizing them.

> Okay, you may now feel free to complain about my pedantry. :)

Complain about it? I thrive on it!

--
Lew
From: Lew on
Roedy Green wrote:
> If you are into it, let's tighten up the vocabulary, create history,
> and I will document the new precise meanings, then Lew can have fun
> razzing the newbies when they use the terms improperly.

There you go again. It was not the newbie whom I razzed. It was your
interpretation and refusal to answer the newbie's question that I razzed. It
was the newbie I supported. Such revisionism, Roedy!

--
Lew
From: Roedy Green on
On Thu, 25 Feb 2010 00:26:59 -0800, Roedy Green
<see_website(a)mindprod.com.invalid> wrote, quoted or indirectly quoted
someone who said :

>it never causes a crash. Only a big in the JVM causes a crash. If
>you don't catch is the run time will, and print out a stack trace.

I sound like Peter Sellers with his "mith" in the closet. That should
be "Only a BUG in the JVM causes a crash."
--
Roedy Green Canadian Mind Products
http://mindprod.com

The major difference between a thing that might go wrong and a thing that cannot possibly go wrong is that when a thing that cannot possibly go wrong goes wrong it usually turns out to be impossible to get at or repair.
~ Douglas Adams (born: 1952-03-11 died: 2001-05-11 at age: 49)
From: Lew on
Peter Duniho wrote:
>> That is, I will (pedantically) point out that you claimed that
>> "[exceptions] that YOU catch and deal with properly will not [cause
>> termination of a program]". Clearly implying that exceptions YOU do
>> NOT catch and deal with property WILL cause termination of the program.

Lew wrote:
> I did not say, "Exceptions that YOU catch", as you misquoted. I

To be pedantic, I said that wrong. I meant to cite:
"I did not say, 'exceptions YOU do NOT catch', ..."

--
Lew