On 21/09/2011 20:57, Randal L. Schwartz wrote: >>>>>> "Rob" == Rob Dixon<rob.di...@gmx.com> writes: > > Rob> I don't have Try::Tiny installed, but will take a look.
I am back at my desk, and have this horror from you to respond to. I had started to enjoy some of your posts, and hoped that your legendary brutal negativity was beginning to lapse. Whatever your thoughts, please drop the shield that says you are responding to people's coding rather than the people themselves. The difference is an age-old philosophy, and I would love to hear your thoughts on the distinction. > I have an addressbar query shortcut of: > > http://search.cpan.org/perldoc/#query# > > aliased to "perldoc", so I can type "perldoc Try::Tiny" and get the > latest manpage on it directly from the CPAN without installing it. Hooray for you. I use my editor as an IDE to do the very same thing. > Rob> If you mean that $@ may be accessed by several pieces of code > Rob> when a program dies, > > No. See the referenced docs. I have thought a lot about how an 'eval' block may be unsafe, and have commented several times to discourage it. I have now read the POD for Try::Tiny, and I cannot see anything that I hadn't already envisaged: that when a Perl process dies $@ may be accessed by several pieces of code. The Try::Tiny documentation says this > When you run an eval block and it succeeds, $@ will be cleared, > potentially clobbering an error that is currently being caught. Oddly, you chose to misquote me by splitting a sentence. Your version of my post is irregular and inappropriate. It is not what I would have written. What I wrote was > I don't have Try::Tiny installed, but will take a look. If you mean that > $@ may be accessed by several pieces of code when a program dies, then I > agree, but my main concern is that try / catch are both simply > prototyped subroutines, and the compile can not tie things down to requiring > > try BLOCK catch BLOCK; Your version: Rob> then I agree, but my main concern is that try / catch are both Rob> simply prototyped subroutines, and the compile can not tie things Rob> down to requiring Rob> Rob> try BLOCK catch BLOCK; > Why does that matter? It's the semantics that you have to get right, > not just the syntax. I am sure you know the answer to that. It matters because the presentation of the mechanism is deceptive. It looks very like while () { : } continue : } but instead is something very different. As I have described, it amounts to two obscure prototyped subroutine definitions. From the source: sub try (&;@); and sub catch (&;@); which is far from what the average man expects of 'while', 'for', 'continue' and so on. It is a deception, and should not be published until the equivalent functionality is part of the Perl language. > Rob> Maybe Try::Tiny works differently but I can't see how it could > Rob> cover this. > > Again, read the referenced doc. It would have taken you about 5 > minutes, and you wouldn't have had to write this entire ignorant reply > or waste my time replying to it. Randal, as I opened, I had started to enjoy and respect your posts here and elsewhere. You were never required to reply to my 'ignorant post', yet you chose to show your foolish emptiness once again. It seems to me that you place your entire worth in your extreme and detailed knowledge of Perl and its teaching. Please believe me that, as a fellow human being, I would love to hear about your personal experiences and how programming has played a part in your character. You certainly seem insecure, and your silliness about your criticism not applying to a person but to their deeds needs to be washed ashore. Stop it and be real. Believe me, you wouldn't cease to exist if you lost your technical ability. Rob -- To unsubscribe, e-mail: beginners-unsubscr...@perl.org For additional commands, e-mail: beginners-h...@perl.org http://learn.perl.org/