<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
		>
<channel>
	<title>Comments for Laufeyjarson writes...</title>
	<atom:link href="http://blog.laufeyjarson.com/comments/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.laufeyjarson.com</link>
	<description>... notes, thoughts, rants, and randomness.</description>
	<lastBuildDate>Mon, 08 Apr 2013 21:01:07 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.5.1</generator>
	<item>
		<title>Comment on Template Toolkit Talk at SVPerl by Maxim Yemelyanov (@maxim4d)</title>
		<link>http://blog.laufeyjarson.com/2013/04/template-toolkit-talk-at-svperl/comment-page-1/#comment-75163</link>
		<dc:creator>Maxim Yemelyanov (@maxim4d)</dc:creator>
		<pubDate>Mon, 08 Apr 2013 21:01:07 +0000</pubDate>
		<guid isPermaLink="false">http://blog.laufeyjarson.com/?p=302#comment-75163</guid>
		<description><![CDATA[Also at page 15 (check all places where you&#039;re using hashes)]]></description>
		<content:encoded><![CDATA[<p>Also at page 15 (check all places where you&#8217;re using hashes)</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Template Toolkit Talk at SVPerl by Anders Nielsen</title>
		<link>http://blog.laufeyjarson.com/2013/04/template-toolkit-talk-at-svperl/comment-page-1/#comment-75108</link>
		<dc:creator>Anders Nielsen</dc:creator>
		<pubDate>Mon, 08 Apr 2013 09:42:30 +0000</pubDate>
		<guid isPermaLink="false">http://blog.laufeyjarson.com/?p=302#comment-75108</guid>
		<description><![CDATA[Thanks. I spottet 2 more typos :-)

In page 23 and 26 = (equal) should be changed to =&gt; (fat comma).]]></description>
		<content:encoded><![CDATA[<p>Thanks. I spottet 2 more typos :-)</p>
<p>In page 23 and 26 = (equal) should be changed to =&gt; (fat comma).</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Why I Dislike Autodie by Peter Valdemar Mørch</title>
		<link>http://blog.laufeyjarson.com/2012/10/why-i-dislike-autodie/comment-page-1/#comment-73672</link>
		<dc:creator>Peter Valdemar Mørch</dc:creator>
		<pubDate>Sat, 16 Mar 2013 10:03:54 +0000</pubDate>
		<guid isPermaLink="false">http://blog.laufeyjarson.com/?p=273#comment-73672</guid>
		<description><![CDATA[@{Christian Walde}: Quote &quot;You manually write code to check the return value of every single system call you do; leaving literally not a single call out, ever. You know all the system calls you need to check as well as how to check each of them and diligently see to it. You aren’t bothered by that at all.&quot;

I would like to add a third class of people who use autodie. People who not only find adding all these checks manually a burden and error prone, but that also find that the real intent of the code becomes hidden in all the error checking. That autodie helps code clarity, because it becomes much shorter. Most pre-autodie code I&#039;ve seen just does dies anyway (*and* forgets many of the checks - e.g. on closing a file that was opened for writing)

@dhaval: Perhaps see bug for autodie regarding autodie working in scopes. 
https://rt.cpan.org/Public/Bug/Display.html?id=72053]]></description>
		<content:encoded><![CDATA[<p>@{Christian Walde}: Quote &#8220;You manually write code to check the return value of every single system call you do; leaving literally not a single call out, ever. You know all the system calls you need to check as well as how to check each of them and diligently see to it. You aren’t bothered by that at all.&#8221;</p>
<p>I would like to add a third class of people who use autodie. People who not only find adding all these checks manually a burden and error prone, but that also find that the real intent of the code becomes hidden in all the error checking. That autodie helps code clarity, because it becomes much shorter. Most pre-autodie code I&#8217;ve seen just does dies anyway (*and* forgets many of the checks &#8211; e.g. on closing a file that was opened for writing)</p>
<p>@dhaval: Perhaps see bug for autodie regarding autodie working in scopes.<br />
<a href="https://rt.cpan.org/Public/Bug/Display.html?id=72053" rel="nofollow">https://rt.cpan.org/Public/Bug/Display.html?id=72053</a></p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Why I Dislike Autodie by dhaval</title>
		<link>http://blog.laufeyjarson.com/2012/10/why-i-dislike-autodie/comment-page-1/#comment-58119</link>
		<dc:creator>dhaval</dc:creator>
		<pubDate>Mon, 29 Oct 2012 14:23:15 +0000</pubDate>
		<guid isPermaLink="false">http://blog.laufeyjarson.com/?p=273#comment-58119</guid>
		<description><![CDATA[autodie does not alter behavior globally but to the file or block used only. 

It does work with scope. 

So basically it is safe and I think not bad to use where we want.]]></description>
		<content:encoded><![CDATA[<p>autodie does not alter behavior globally but to the file or block used only. </p>
<p>It does work with scope. </p>
<p>So basically it is safe and I think not bad to use where we want.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Why I Dislike Autodie by D.Wilson</title>
		<link>http://blog.laufeyjarson.com/2012/10/why-i-dislike-autodie/comment-page-1/#comment-57916</link>
		<dc:creator>D.Wilson</dc:creator>
		<pubDate>Fri, 26 Oct 2012 20:41:11 +0000</pubDate>
		<guid isPermaLink="false">http://blog.laufeyjarson.com/?p=273#comment-57916</guid>
		<description><![CDATA[I don&#039;t like autodie partly for the core doc reasons you state, but also because there&#039;s no autoconfess.]]></description>
		<content:encoded><![CDATA[<p>I don&#8217;t like autodie partly for the core doc reasons you state, but also because there&#8217;s no autoconfess.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Why I Dislike Autodie by McA</title>
		<link>http://blog.laufeyjarson.com/2012/10/why-i-dislike-autodie/comment-page-1/#comment-57840</link>
		<dc:creator>McA</dc:creator>
		<pubDate>Thu, 25 Oct 2012 20:34:48 +0000</pubDate>
		<guid isPermaLink="false">http://blog.laufeyjarson.com/?p=273#comment-57840</guid>
		<description><![CDATA[Hi,

I have to admit: I do like exceptions. But more of that: I do like a well thought exception hierarchy (exception being objects (!) of a class hierarchy on its own). Perl doesn&#039;t have it builtin. That&#039;s one of the reasons I looked at and programmed in Python for a while.
I think &#039;autodie&#039; is a little bit like Moose. You can add functionality which is missing in the Perl core. Before beginners or professionals (I do know some who don&#039;t care about error handling) don&#039;t do error handling at all I prefer seeing them using autodie. For many scripts it is more than ok to just die on errors.
Why have I started to like exceptions. I started my career with programming in C. And I started to hate - as a defensive programmer - the whole idioms of error checking you are forced to use, like 

buffer = malloc((size_t) bufferlength);
if(buffer == NULL) {
   fprintf(STDERR, &quot;ERROR: Can&#039;t allocate memory. So what, I&#039;ve to die, because I don&#039;t know what I should do otherwise. Probably I should wait for console input until then administrator added hot pluggable memory to the server.\n&quot;);
   exit(1);
}

is simply tedious. And you have to write many lines of code even you are just interested in allocating memory. It would be intersting to see actual projects written in C which simply die, ehm I mean exit, on malloc errors. And that is one of the main advantage with exceptions for me. Write the code to solve the initial problem. If it&#039;s ok that the whole program dies if something goes wrong, than you&#039;re done with exceptions. Yes, yes, it has also a downside. Look at many java programs. If you have a typo while writing the filename you can get 50 lines of stacktrace saying more or less nothing. Just developers can interpret the deepest message as a hint on the typo. That is not the good way either. But java forces you to think about your function using other functions probably throwing exception. 
I think that a good exception classification can help you to react on exceptions that may be recoverable on higher program levels and just die on others. (Yes, manually propagating low level errors to upper levels is also sooo tedious)
I have to agree that functions throwing exceptions have to be documented to act so. So when they do that suddenly, it&#039;s not nice.

Conclusion: You CAN use autodie. You don&#039;t need to. So it&#039;s perfect TIMTOWTDI, the ultimative Perl dogma.

Best regards
McA]]></description>
		<content:encoded><![CDATA[<p>Hi,</p>
<p>I have to admit: I do like exceptions. But more of that: I do like a well thought exception hierarchy (exception being objects (!) of a class hierarchy on its own). Perl doesn&#8217;t have it builtin. That&#8217;s one of the reasons I looked at and programmed in Python for a while.<br />
I think &#8216;autodie&#8217; is a little bit like Moose. You can add functionality which is missing in the Perl core. Before beginners or professionals (I do know some who don&#8217;t care about error handling) don&#8217;t do error handling at all I prefer seeing them using autodie. For many scripts it is more than ok to just die on errors.<br />
Why have I started to like exceptions. I started my career with programming in C. And I started to hate &#8211; as a defensive programmer &#8211; the whole idioms of error checking you are forced to use, like </p>
<p>buffer = malloc((size_t) bufferlength);<br />
if(buffer == NULL) {<br />
   fprintf(STDERR, &#8220;ERROR: Can&#8217;t allocate memory. So what, I&#8217;ve to die, because I don&#8217;t know what I should do otherwise. Probably I should wait for console input until then administrator added hot pluggable memory to the server.\n&#8221;);<br />
   exit(1);<br />
}</p>
<p>is simply tedious. And you have to write many lines of code even you are just interested in allocating memory. It would be intersting to see actual projects written in C which simply die, ehm I mean exit, on malloc errors. And that is one of the main advantage with exceptions for me. Write the code to solve the initial problem. If it&#8217;s ok that the whole program dies if something goes wrong, than you&#8217;re done with exceptions. Yes, yes, it has also a downside. Look at many java programs. If you have a typo while writing the filename you can get 50 lines of stacktrace saying more or less nothing. Just developers can interpret the deepest message as a hint on the typo. That is not the good way either. But java forces you to think about your function using other functions probably throwing exception.<br />
I think that a good exception classification can help you to react on exceptions that may be recoverable on higher program levels and just die on others. (Yes, manually propagating low level errors to upper levels is also sooo tedious)<br />
I have to agree that functions throwing exceptions have to be documented to act so. So when they do that suddenly, it&#8217;s not nice.</p>
<p>Conclusion: You CAN use autodie. You don&#8217;t need to. So it&#8217;s perfect TIMTOWTDI, the ultimative Perl dogma.</p>
<p>Best regards<br />
McA</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Why I Dislike Autodie by Ron Savage</title>
		<link>http://blog.laufeyjarson.com/2012/10/why-i-dislike-autodie/comment-page-1/#comment-57760</link>
		<dc:creator>Ron Savage</dc:creator>
		<pubDate>Wed, 24 Oct 2012 22:22:58 +0000</pubDate>
		<guid isPermaLink="false">http://blog.laufeyjarson.com/?p=273#comment-57760</guid>
		<description><![CDATA[Hi
I don&#039;t like autodie either. Somehow I feel uneasy about it, part of that being the action-at-a-distance thing.
But, unlike you, my code would virtually never be oriented to recover somehow. I do want it to die, but just not with autodie, even if that sounds contradictory. Often I use Try::Tiny of course, to gracefully inform the user, otherwise just die.
There&#039;s no one-size-fits-all....
Cheers
Ron]]></description>
		<content:encoded><![CDATA[<p>Hi<br />
I don&#8217;t like autodie either. Somehow I feel uneasy about it, part of that being the action-at-a-distance thing.<br />
But, unlike you, my code would virtually never be oriented to recover somehow. I do want it to die, but just not with autodie, even if that sounds contradictory. Often I use Try::Tiny of course, to gracefully inform the user, otherwise just die.<br />
There&#8217;s no one-size-fits-all&#8230;.<br />
Cheers<br />
Ron</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Why I Dislike Autodie by Christian Walde</title>
		<link>http://blog.laufeyjarson.com/2012/10/why-i-dislike-autodie/comment-page-1/#comment-57705</link>
		<dc:creator>Christian Walde</dc:creator>
		<pubDate>Wed, 24 Oct 2012 08:51:53 +0000</pubDate>
		<guid isPermaLink="false">http://blog.laufeyjarson.com/?p=273#comment-57705</guid>
		<description><![CDATA[You manually write code to check the return value of every single system call you do; leaving literally not a single call out, ever. You know all the system calls you need to check as well as how to check each of them and diligently see to it. You aren&#039;t bothered by that at all.

So, really, you do not need autodie and that is fine. :)

Now, there are two classes of people who do draw utility from autodie:

1. People who think the act of checking all of these calls is unnecessary burden. This might be a general attitude or simply simply the case for some scripts where the author wishes it to die if something unexpected happens.

2. People who do not know all the various calls to check and the ways to check them. For them autodie provides a way to get things done without needing to worry too much about whether they forgot to check something or without spending a few days researching and memorizing all the ways.]]></description>
		<content:encoded><![CDATA[<p>You manually write code to check the return value of every single system call you do; leaving literally not a single call out, ever. You know all the system calls you need to check as well as how to check each of them and diligently see to it. You aren&#8217;t bothered by that at all.</p>
<p>So, really, you do not need autodie and that is fine. :)</p>
<p>Now, there are two classes of people who do draw utility from autodie:</p>
<p>1. People who think the act of checking all of these calls is unnecessary burden. This might be a general attitude or simply simply the case for some scripts where the author wishes it to die if something unexpected happens.</p>
<p>2. People who do not know all the various calls to check and the ways to check them. For them autodie provides a way to get things done without needing to worry too much about whether they forgot to check something or without spending a few days researching and memorizing all the ways.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Why I Dislike Autodie by Steven Haryanto</title>
		<link>http://blog.laufeyjarson.com/2012/10/why-i-dislike-autodie/comment-page-1/#comment-57680</link>
		<dc:creator>Steven Haryanto</dc:creator>
		<pubDate>Tue, 23 Oct 2012 23:48:34 +0000</pubDate>
		<guid isPermaLink="false">http://blog.laufeyjarson.com/?p=273#comment-57680</guid>
		<description><![CDATA[I also find myself stopped using autodie except in a few situations, mostly in short scripts. It turns out to be annoying most of the time.]]></description>
		<content:encoded><![CDATA[<p>I also find myself stopped using autodie except in a few situations, mostly in short scripts. It turns out to be annoying most of the time.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Ugly Old Perl by D.Wilson</title>
		<link>http://blog.laufeyjarson.com/2010/11/ugly-old-perl/comment-page-1/#comment-57667</link>
		<dc:creator>D.Wilson</dc:creator>
		<pubDate>Tue, 23 Oct 2012 20:27:50 +0000</pubDate>
		<guid isPermaLink="false">http://blog.laufeyjarson.com/?p=103#comment-57667</guid>
		<description><![CDATA[If you want to cycle the log files, and write to the &#039;new&#039; file, you need to close the old one. Autoflush doesn&#039;t help.]]></description>
		<content:encoded><![CDATA[<p>If you want to cycle the log files, and write to the &#8216;new&#8217; file, you need to close the old one. Autoflush doesn&#8217;t help.</p>
]]></content:encoded>
	</item>
</channel>
</rss>
