digitalmars.D - I WANT
- Georg Wrede (19/19) Apr 13 2005 ?
- Matthew (9/28) Apr 13 2005 I take it you mean quenchable and not quenchable? Specifically, the not ...
- Georg Wrede (6/57) Apr 13 2005 I'm not /that/ smart. So I didn't understand the line above.
- Sean Kelly (11/13) Apr 13 2005 FWIW, the language implementation for Error that most makes sense to me ...
- Matthew (8/31) Apr 13 2005 The issue there, I guess, is that there would be no option for
- Ben Hinkle (9/28) Apr 13 2005 So you want to terminate the program termination thread. Can't I catch t...
? Well, I've not wanted stuff for some time, so now it's my turn! I want: - The discussion about program termination or not, to end. - Two throwables: one catchable, one not catchable. No more, and no less than these two. Let library programmers inherit from these two. - Catch clauses to be able to examine and rethrow, or throw something else, if they want. - Contract checking to be on or off, but absolutely no grey areas in between. - Those who don't want CP, to instead use exceptions or whatever else. And let CP live in peace. And if anybody opposes this post, I'll consider him Sub Simian, I'll laugh at him secretly, and then I'm gonna tell on you to Walter and Mom. --------------- Seriously, though, I really do want these things. And I have seen enough discussion about them already, thank you very much.
Apr 13 2005
"Georg Wrede" <georg.wrede nospam.org> wrote in message news:425CE5DC.2030709 nospam.org...? Well, I've not wanted stuff for some time, so now it's my turn! I want: - The discussion about program termination or not, to end.Already ended. At least I think so.- Two throwables: one catchable, one not catchable. No more, and no less than these two. Let library programmers inherit from these two.I take it you mean quenchable and not quenchable? Specifically, the not quenchable type - currently called Errors - can be caught but are rethrown at the end of the catch scope if they, or another unquenchable type is not rethrown. If that's what you mean, I can live with the binary taxonomy. :-)- Catch clauses to be able to examine and rethrow, or throw something else, if they want.Does this include- Contract checking to be on or off, but absolutely no grey areas in between.Agreed. I think it was you that observed that we're going to have CP and no-CP versions of all libraries, including Phobos. So more than two's going to hurt a lot.- Those who don't want CP, to instead use exceptions or whatever else. And let CP live in peace. And if anybody opposes this post, I'll consider him Sub Simian, I'll laugh at him secretly, and then I'm gonna tell on you to Walter and Mom. --------------- Seriously, though, I really do want these things. And I have seen enough discussion about them already, thank you very much.Agreed.
Apr 13 2005
Matthew wrote:"Georg Wrede" <georg.wrede nospam.org> wrote in message news:425CE5DC.2030709 nospam.org...That's what I mean. Thanks for the clarification. Good!? Well, I've not wanted stuff for some time, so now it's my turn! I want: - The discussion about program termination or not, to end.Already ended. At least I think so.- Two throwables: one catchable, one not catchable. No more, and no less than these two. Let library programmers inherit from these two.I take it you mean quenchable and not quenchable? Specifically, the not quenchable type - currently called Errors - can be caught but are rethrown at the end of the catch scope if they, or another unquenchable type is not rethrown. If that's what you mean, I can live with the binary taxonomy. :-)Does this includeI'm not /that/ smart. So I didn't understand the line above. Anyhow, CP and throwing stuff are orthogonal, IMHO.It would hurt. It's also a matter of principle. CP is not to be excercised half-heartedly.- Contract checking to be on or off, but absolutely no grey areas in between.Agreed. I think it was you that observed that we're going to have CP and no-CP versions of all libraries, including Phobos. So more than two's going to hurt a lot.- Those who don't want CP, to instead use exceptions or whatever else. And let CP live in peace. And if anybody opposes this post, I'll consider him Sub Simian, I'll laugh at him secretly, and then I'm gonna tell on you to Walter and Mom. --------------- Seriously, though, I really do want these things. And I have seen enough discussion about them already, thank you very much.Agreed.
Apr 13 2005
In article <d3ipn0$1ai1$2 digitaldaemon.com>, Matthew says...I take it you mean quenchable and not quenchable? Specifically, the not quenchable type - currently called Errors - can be caught but are rethrown at the end of the catch scope if they, or another unquenchable type is not rethrown.FWIW, the language implementation for Error that most makes sense to me is to declare it as an auto class and put terminate() in its dtor. Since exceptions are a rather odd case in that they don't truly leave scope until execution leaves a catch block either normally or by throwing something else, this would be a pretty straightforward way to implement this feature. The only sticking point would be if this error were chained via the 'next' reference--the code would have to be intelligent enough to notice this and defer destruction. Unless, of course, this were deemed illegal in which case it could be destroyed normally at that time. Sean
Apr 13 2005
"Sean Kelly" <sean f4.ca> wrote in message news:d3jg73$1va3$1 digitaldaemon.com...In article <d3ipn0$1ai1$2 digitaldaemon.com>, Matthew says...The issue there, I guess, is that there would be no option for quenching it. Also, I think they need to be catchable, because in most cases an instant termination is not desirable.I take it you mean quenchable and not quenchable? Specifically, the not quenchable type - currently called Errors - can be caught but are rethrown at the end of the catch scope if they, or another unquenchable type is not rethrown.FWIW, the language implementation for Error that most makes sense to me is to declare it as an auto class and put terminate() in its dtor. Since exceptions are a rather odd case in that they don't truly leave scope until execution leaves a catch block either normally or by throwing something else, this would be a pretty straightforward way to implement this feature.The only sticking point would be if this error were chained via the 'next' reference--the code would have to be intelligent enough to notice this and defer destruction. Unless, of course, this were deemed illegal in which case it could be destroyed normally at that time.Perhaps we could employ a similar mechanism as I've used in the STLSoft unrecoverable (and its derived class contract_violation), whereby they ref-count a heap allocated long.
Apr 13 2005
"Georg Wrede" <georg.wrede nospam.org> wrote in message news:425CE5DC.2030709 nospam.org...? Well, I've not wanted stuff for some time, so now it's my turn! I want: - The discussion about program termination or not, to end.So you want to terminate the program termination thread. Can't I catch that? just kidding. I think everyone understands the arguments on both sides after all those posts.- Two throwables: one catchable, one not catchable. No more, and no less than these two. Let library programmers inherit from these two. - Catch clauses to be able to examine and rethrow, or throw something else, if they want. - Contract checking to be on or off, but absolutely no grey areas in between. - Those who don't want CP, to instead use exceptions or whatever else. And let CP live in peace. And if anybody opposes this post, I'll consider him Sub Simian, I'll laugh at him secretly, and then I'm gonna tell on you to Walter and Mom. --------------- Seriously, though, I really do want these things. And I have seen enough discussion about them already, thank you very much.I sympathize. The general topic unfortunately won't end until phobos and/or the compiler changes (and even then it probably won't end) so it will have to come up again. That is one thing we all can agree on :-). The devil is in the details but D will be better for it.
Apr 13 2005