<?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/"
	xmlns:georss="http://www.georss.org/georss" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:media="http://search.yahoo.com/mrss/"
		>
<channel>
	<title>Comments on: Perl vs Python: Why the debate is meaningless</title>
	<atom:link href="http://bytebaker.com/2007/01/29/perl-vs-python-why-the-debate-is-meaningless/feed/" rel="self" type="application/rss+xml" />
	<link>http://bytebaker.com/2007/01/29/perl-vs-python-why-the-debate-is-meaningless/</link>
	<description>Computer Science isn&#039;t a science and it&#039;s not about computers</description>
	<lastBuildDate>Tue, 17 Aug 2010 15:31:16 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.com/</generator>
	<item>
		<title>By: Demolishun</title>
		<link>http://bytebaker.com/2007/01/29/perl-vs-python-why-the-debate-is-meaningless/#comment-775</link>
		<dc:creator>Demolishun</dc:creator>
		<pubDate>Mon, 12 Jul 2010 22:16:37 +0000</pubDate>
		<guid isPermaLink="false">http://xcomputers.wordpress.com/2007/01/29/perl-vs-python-why-the-debate-is-meaningless/#comment-775</guid>
		<description>Here are the languages I have used:
Assembler (several architectures both MIPS and RISC)
Basic (DOS and Visual)
C
C++
PHP
Perl
Python
Pascal

My impression coming onto a project using over 23K lines of Perl and years of different developers:
I will grow old and die trying to understand that code!
There is consistency in style mostly on this project and that is a blessing.  However, understanding the nuances of all the sorting, pattern matching, etc is serious brain damage.   It is working code and I touch it as little as possible.  

My impression of python:
Easy to understand and use.  Once I got my head around that this is not C++ it was easier to break the rules and do it the Python way.  For new projects I will pursue Python or PHP (webbased).  

Neither of these were my first language.  My learning went like this: Pascal, Assembler, C++, C, Basic, a bunch of other crap, Python, Perl, more crap.  My preference is to use Python for projects as I can lay out the code quickly.  The next I grab is C++.  For web however, I grab PHP and try to stay away from Perl except for existing code.  

However, one thing impressed me about Perl.  When I needed to use Perl with a PHP session I was able to find working Perl code that bridged that gap.  This allowed all authentication to be through a CMS system based upon PHP, but allowed me to maintain the high quality working Perl code to continue on as though nothing had changed.  That is a testament to Perl programmers. 

Right now I am working on a project where I need to receive an event from an internet client, queue the event, process the request on a server different from the web based server, send a resulting file to a third party website, send a message back to the client at a later time (latent notification) about where the information was posted.  The initiating event will be done in PHP, the storage will be in MySQL, the second server will poll the database of the first using possibly a combination of PHP and Python or just Python.  The second server will launch an application using Wine to produce the file and post this file.  

Python was my choice because it is so versatile and I don&#039;t need to spend a lot of time getting versed in it.  Even though I has used Python before learning Perl I had forgotten most things about Python.  It took only a couple of hours to get back up and productive.  I only have so much time on this Earth to do things.  If I am going to do something I am going to use the tool with the most bang for the buck for the application at hand.  A language may have superior processing of whatever data structures, but what use is it if the brain damage required to understand those features takes up more time than to create the solution in a different language in the first place?  Yeah, that was a run-on sentence. : )  

So, yes, the debate is meaningless.  Different tools, different strengths, and vastly different user bases.  I would not for a second think that a computer genius using his tool of choice could not crush a novice with a sexy new computer language any day.  I am not that genius and Perl and me don&#039;t get along.</description>
		<content:encoded><![CDATA[<p>Here are the languages I have used:<br />
Assembler (several architectures both MIPS and RISC)<br />
Basic (DOS and Visual)<br />
C<br />
C++<br />
PHP<br />
Perl<br />
Python<br />
Pascal</p>
<p>My impression coming onto a project using over 23K lines of Perl and years of different developers:<br />
I will grow old and die trying to understand that code!<br />
There is consistency in style mostly on this project and that is a blessing.  However, understanding the nuances of all the sorting, pattern matching, etc is serious brain damage.   It is working code and I touch it as little as possible.  </p>
<p>My impression of python:<br />
Easy to understand and use.  Once I got my head around that this is not C++ it was easier to break the rules and do it the Python way.  For new projects I will pursue Python or PHP (webbased).  </p>
<p>Neither of these were my first language.  My learning went like this: Pascal, Assembler, C++, C, Basic, a bunch of other crap, Python, Perl, more crap.  My preference is to use Python for projects as I can lay out the code quickly.  The next I grab is C++.  For web however, I grab PHP and try to stay away from Perl except for existing code.  </p>
<p>However, one thing impressed me about Perl.  When I needed to use Perl with a PHP session I was able to find working Perl code that bridged that gap.  This allowed all authentication to be through a CMS system based upon PHP, but allowed me to maintain the high quality working Perl code to continue on as though nothing had changed.  That is a testament to Perl programmers. </p>
<p>Right now I am working on a project where I need to receive an event from an internet client, queue the event, process the request on a server different from the web based server, send a resulting file to a third party website, send a message back to the client at a later time (latent notification) about where the information was posted.  The initiating event will be done in PHP, the storage will be in MySQL, the second server will poll the database of the first using possibly a combination of PHP and Python or just Python.  The second server will launch an application using Wine to produce the file and post this file.  </p>
<p>Python was my choice because it is so versatile and I don&#8217;t need to spend a lot of time getting versed in it.  Even though I has used Python before learning Perl I had forgotten most things about Python.  It took only a couple of hours to get back up and productive.  I only have so much time on this Earth to do things.  If I am going to do something I am going to use the tool with the most bang for the buck for the application at hand.  A language may have superior processing of whatever data structures, but what use is it if the brain damage required to understand those features takes up more time than to create the solution in a different language in the first place?  Yeah, that was a run-on sentence. : )  </p>
<p>So, yes, the debate is meaningless.  Different tools, different strengths, and vastly different user bases.  I would not for a second think that a computer genius using his tool of choice could not crush a novice with a sexy new computer language any day.  I am not that genius and Perl and me don&#8217;t get along.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: crispy</title>
		<link>http://bytebaker.com/2007/01/29/perl-vs-python-why-the-debate-is-meaningless/#comment-774</link>
		<dc:creator>crispy</dc:creator>
		<pubDate>Fri, 02 Jul 2010 17:17:10 +0000</pubDate>
		<guid isPermaLink="false">http://xcomputers.wordpress.com/2007/01/29/perl-vs-python-why-the-debate-is-meaningless/#comment-774</guid>
		<description>I can see that when somebody tries to promote one programming language over another, they obviously do not know the language they (use&#124;don&#039;t use) as well as they should.

I am an avid Python user, but I highly respect Perl magicians. To this day, I am still trying to better learn Perl and can not use it as well as I can Python. I do appreciate how Perl is a better language choice in some cases than Python. 

Just because you can not understand somebody else&#039;s Perl script, it doesn&#039;t mean the language is bad - it&#039;s because you don&#039;t know Perl well enough to interpret their code.</description>
		<content:encoded><![CDATA[<p>I can see that when somebody tries to promote one programming language over another, they obviously do not know the language they (use|don&#8217;t use) as well as they should.</p>
<p>I am an avid Python user, but I highly respect Perl magicians. To this day, I am still trying to better learn Perl and can not use it as well as I can Python. I do appreciate how Perl is a better language choice in some cases than Python. </p>
<p>Just because you can not understand somebody else&#8217;s Perl script, it doesn&#8217;t mean the language is bad &#8211; it&#8217;s because you don&#8217;t know Perl well enough to interpret their code.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Michael</title>
		<link>http://bytebaker.com/2007/01/29/perl-vs-python-why-the-debate-is-meaningless/#comment-722</link>
		<dc:creator>Michael</dc:creator>
		<pubDate>Sat, 15 May 2010 13:19:56 +0000</pubDate>
		<guid isPermaLink="false">http://xcomputers.wordpress.com/2007/01/29/perl-vs-python-why-the-debate-is-meaningless/#comment-722</guid>
		<description>I have led a commercial Perl project with &gt;5 programmers and +100k lines of code. The perlish &quot;There&#039;s more than one way to do it&quot; can hurt you severely when there are too many &quot;individual&quot; developers that can&#039;t agree on common idioms and code style. This is easier said than done, as there are way too many things in Perl that can be done differently and that have to be agreed on and reviewed and enforced constantly (e.g. parameter passing via shift or list matching; MooseX, &quot;manual&quot; OOP or using Moose or Mouse or Class::InsideOut; documentation/POD style; packaging; use of test suites; even things like call your instance &quot;self&quot; or &quot;this&quot;). 

Moreover, Perl5 OOP without Moose is not worth the trouble. There is simply too much boiler-plate code in every class, you need too much discipline do stay consistent throughout the whole project. Moose, however, does not only alleviate the &quot;OOP burden&quot; in Perl but has so many cool features missing from languages like Python that it may well be a reason to use Perl by itself.

If there is one thing that I have learnt in my Perl projects then it is that it is not easy to find &quot;appropriate&quot; Perl developers. &quot;Appropriate developer&quot; does not mean &quot;good programmer&quot; as there are many people out there who are able to take Perl to its maximum. My major complaint is that these people are the ones who are responsible for all the &quot;bad press&quot; out there. The inability to find people to write and maintain your software over the complete lifecycle is *the* major risk using Perl.

Good software should not depend on its programming language, in particular it should not depend on language features that most people don&#039;t understand. If you get to a point where your Perl code becomes indistinguishable from, say Python code or Java code, *and* you are taking advantage of the cool things about Perl like mod_perl, Moose or the huge amount of packages in CPAN then Perl definitely might be the right choice.</description>
		<content:encoded><![CDATA[<p>I have led a commercial Perl project with &gt;5 programmers and +100k lines of code. The perlish &#8220;There&#8217;s more than one way to do it&#8221; can hurt you severely when there are too many &#8220;individual&#8221; developers that can&#8217;t agree on common idioms and code style. This is easier said than done, as there are way too many things in Perl that can be done differently and that have to be agreed on and reviewed and enforced constantly (e.g. parameter passing via shift or list matching; MooseX, &#8220;manual&#8221; OOP or using Moose or Mouse or Class::InsideOut; documentation/POD style; packaging; use of test suites; even things like call your instance &#8220;self&#8221; or &#8220;this&#8221;). </p>
<p>Moreover, Perl5 OOP without Moose is not worth the trouble. There is simply too much boiler-plate code in every class, you need too much discipline do stay consistent throughout the whole project. Moose, however, does not only alleviate the &#8220;OOP burden&#8221; in Perl but has so many cool features missing from languages like Python that it may well be a reason to use Perl by itself.</p>
<p>If there is one thing that I have learnt in my Perl projects then it is that it is not easy to find &#8220;appropriate&#8221; Perl developers. &#8220;Appropriate developer&#8221; does not mean &#8220;good programmer&#8221; as there are many people out there who are able to take Perl to its maximum. My major complaint is that these people are the ones who are responsible for all the &#8220;bad press&#8221; out there. The inability to find people to write and maintain your software over the complete lifecycle is *the* major risk using Perl.</p>
<p>Good software should not depend on its programming language, in particular it should not depend on language features that most people don&#8217;t understand. If you get to a point where your Perl code becomes indistinguishable from, say Python code or Java code, *and* you are taking advantage of the cool things about Perl like mod_perl, Moose or the huge amount of packages in CPAN then Perl definitely might be the right choice.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: baboo</title>
		<link>http://bytebaker.com/2007/01/29/perl-vs-python-why-the-debate-is-meaningless/#comment-563</link>
		<dc:creator>baboo</dc:creator>
		<pubDate>Wed, 02 Dec 2009 07:12:16 +0000</pubDate>
		<guid isPermaLink="false">http://xcomputers.wordpress.com/2007/01/29/perl-vs-python-why-the-debate-is-meaningless/#comment-563</guid>
		<description>Hi baboo again!

Serious stuff
-------------
1) Just use perl man. New OOPS module came up called MOOSE. So u don&#039;t 
   need to use any other programming languages. 
2) Also, catalyst rocks and there are a lot of success stories around 
   perl and catalyst.
3) Particularly python&#039;s GIL flop story and ruby flop story with 
   parallel processing made people look back to perl for help. (Of-
   course scala is also used by some). I always told about perl as big 
   daddy, check earlier post/s and it is proved beyond doubt.

Funny stuff
-----------
1) God will burn u if u use any other programming language other than 
   perl. :-)
2) U shud not do friendship with people using programming languages 
   other than perl. :-)

Cheers,
baboo</description>
		<content:encoded><![CDATA[<p>Hi baboo again!</p>
<p>Serious stuff<br />
&#8212;&#8212;&#8212;&#8212;-<br />
1) Just use perl man. New OOPS module came up called MOOSE. So u don&#8217;t<br />
   need to use any other programming languages.<br />
2) Also, catalyst rocks and there are a lot of success stories around<br />
   perl and catalyst.<br />
3) Particularly python&#8217;s GIL flop story and ruby flop story with<br />
   parallel processing made people look back to perl for help. (Of-<br />
   course scala is also used by some). I always told about perl as big<br />
   daddy, check earlier post/s and it is proved beyond doubt.</p>
<p>Funny stuff<br />
&#8212;&#8212;&#8212;&#8211;<br />
1) God will burn u if u use any other programming language other than<br />
   perl. <img src='http://s.wordpress.com/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /><br />
2) U shud not do friendship with people using programming languages<br />
   other than perl. <img src='http://s.wordpress.com/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
<p>Cheers,<br />
baboo</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Raul</title>
		<link>http://bytebaker.com/2007/01/29/perl-vs-python-why-the-debate-is-meaningless/#comment-561</link>
		<dc:creator>Raul</dc:creator>
		<pubDate>Tue, 24 Nov 2009 07:32:43 +0000</pubDate>
		<guid isPermaLink="false">http://xcomputers.wordpress.com/2007/01/29/perl-vs-python-why-the-debate-is-meaningless/#comment-561</guid>
		<description>Firstly, we should understand that Perl and Python (or any other language for that matter) are different. If they were exactly the same, why have seperate languages i.e. Perl or Python in the first place? Their difference is what makes one more powerful in a particular situation.

Now what that &quot;situation&quot; is depends on the programmer. For some, this is easy in Python, for others that very thing is even easier in Perl. The best thing to do is NOT CARE what others think, and find out the facts for yourself.

If you&#039;re a real programmer, you&#039;d have no problems learning the basics of a new language in an evening. The best thing to do is, pick up a Python book and a Perl book, sincerely learn them both. Don&#039;t &quot;compare&quot; them line to line, for they&#039;re different (as I said before).

Exploit their strengths. People for ages have been saying &quot;C/C++&quot; can become unreadable, and one can&#039;t read his own sourcecode that he might have written months ago. But that doesn&#039;t stop critical applications from being written in those languages. Don&#039;t let other&#039;s thoughts and conveniences influence your own logical judgment.</description>
		<content:encoded><![CDATA[<p>Firstly, we should understand that Perl and Python (or any other language for that matter) are different. If they were exactly the same, why have seperate languages i.e. Perl or Python in the first place? Their difference is what makes one more powerful in a particular situation.</p>
<p>Now what that &#8220;situation&#8221; is depends on the programmer. For some, this is easy in Python, for others that very thing is even easier in Perl. The best thing to do is NOT CARE what others think, and find out the facts for yourself.</p>
<p>If you&#8217;re a real programmer, you&#8217;d have no problems learning the basics of a new language in an evening. The best thing to do is, pick up a Python book and a Perl book, sincerely learn them both. Don&#8217;t &#8220;compare&#8221; them line to line, for they&#8217;re different (as I said before).</p>
<p>Exploit their strengths. People for ages have been saying &#8220;C/C++&#8221; can become unreadable, and one can&#8217;t read his own sourcecode that he might have written months ago. But that doesn&#8217;t stop critical applications from being written in those languages. Don&#8217;t let other&#8217;s thoughts and conveniences influence your own logical judgment.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Steve</title>
		<link>http://bytebaker.com/2007/01/29/perl-vs-python-why-the-debate-is-meaningless/#comment-554</link>
		<dc:creator>Steve</dc:creator>
		<pubDate>Thu, 05 Nov 2009 08:55:50 +0000</pubDate>
		<guid isPermaLink="false">http://xcomputers.wordpress.com/2007/01/29/perl-vs-python-why-the-debate-is-meaningless/#comment-554</guid>
		<description>Hi Mark

You can do this in Java using BigDecimal for immutable, arbitrary-precision signed decimal numbers, whilst C# has a &quot;decimal&quot; 128-bit data type.

These types/classes are useful for financial calculations where small fractions are important to the resultant sum.  Other application domains such as graphics and many scientific areas sometimes don&#039;t need such precision, but do require speed for numerically intensive calculations (Fast Fourier Transforms for example).

A classic speed / precision trade-off.

Example code follows:

Java:

BigDecimal payment = new BigDecimal(&quot;1115.373322233445&quot;);

C#

decimal payment = 1115.373322233445

C# &quot;decimal&quot; uses 128bits and is syntactically quite clean, however  Java&#039;s BigDecimal is of arbitrary precision.

Hope this helps.

Cheers,
Steve</description>
		<content:encoded><![CDATA[<p>Hi Mark</p>
<p>You can do this in Java using BigDecimal for immutable, arbitrary-precision signed decimal numbers, whilst C# has a &#8220;decimal&#8221; 128-bit data type.</p>
<p>These types/classes are useful for financial calculations where small fractions are important to the resultant sum.  Other application domains such as graphics and many scientific areas sometimes don&#8217;t need such precision, but do require speed for numerically intensive calculations (Fast Fourier Transforms for example).</p>
<p>A classic speed / precision trade-off.</p>
<p>Example code follows:</p>
<p>Java:</p>
<p>BigDecimal payment = new BigDecimal(&#8220;1115.373322233445&#8243;);</p>
<p>C#</p>
<p>decimal payment = 1115.373322233445</p>
<p>C# &#8220;decimal&#8221; uses 128bits and is syntactically quite clean, however  Java&#8217;s BigDecimal is of arbitrary precision.</p>
<p>Hope this helps.</p>
<p>Cheers,<br />
Steve</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: AaronD</title>
		<link>http://bytebaker.com/2007/01/29/perl-vs-python-why-the-debate-is-meaningless/#comment-443</link>
		<dc:creator>AaronD</dc:creator>
		<pubDate>Sat, 22 Aug 2009 19:39:53 +0000</pubDate>
		<guid isPermaLink="false">http://xcomputers.wordpress.com/2007/01/29/perl-vs-python-why-the-debate-is-meaningless/#comment-443</guid>
		<description>If you want an interactive shell in perl, the easiest way is to fire up the perl debugger in command mode.
just run perl -de 1
Be careful declaring lexical my vars this way.  Scope becomes a single line.

--Aaron</description>
		<content:encoded><![CDATA[<p>If you want an interactive shell in perl, the easiest way is to fire up the perl debugger in command mode.<br />
just run perl -de 1<br />
Be careful declaring lexical my vars this way.  Scope becomes a single line.</p>
<p>&#8211;Aaron</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Mark</title>
		<link>http://bytebaker.com/2007/01/29/perl-vs-python-why-the-debate-is-meaningless/#comment-82</link>
		<dc:creator>Mark</dc:creator>
		<pubDate>Tue, 09 Jun 2009 04:31:23 +0000</pubDate>
		<guid isPermaLink="false">http://xcomputers.wordpress.com/2007/01/29/perl-vs-python-why-the-debate-is-meaningless/#comment-82</guid>
		<description>One thing about perl that i have found that
I haven&#039;t been able to do in any other language
is print a number to the 5 millionth place
like this

require &quot;bigfloat.pl&quot;;
print fdiv(1,23**.2345,  5000000);

if you can do that in any other language
let me know... what language it is!

&quot;one thing is for sure is that I don&#039;t think
you could do that in less code.&quot;

I would love to be able to do that in C++ or C
even using more code,  PLEASE let me know
if you figure out the code for that

and ASM would be even better!
mrbaker_mark@yahoo.com</description>
		<content:encoded><![CDATA[<p>One thing about perl that i have found that<br />
I haven&#8217;t been able to do in any other language<br />
is print a number to the 5 millionth place<br />
like this</p>
<p>require &#8220;bigfloat.pl&#8221;;<br />
print fdiv(1,23**.2345,  5000000);</p>
<p>if you can do that in any other language<br />
let me know&#8230; what language it is!</p>
<p>&#8220;one thing is for sure is that I don&#8217;t think<br />
you could do that in less code.&#8221;</p>
<p>I would love to be able to do that in C++ or C<br />
even using more code,  PLEASE let me know<br />
if you figure out the code for that</p>
<p>and ASM would be even better!<br />
<a href="mailto:mrbaker_mark@yahoo.com">mrbaker_mark@yahoo.com</a></p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Jim</title>
		<link>http://bytebaker.com/2007/01/29/perl-vs-python-why-the-debate-is-meaningless/#comment-81</link>
		<dc:creator>Jim</dc:creator>
		<pubDate>Sun, 15 Feb 2009 20:13:12 +0000</pubDate>
		<guid isPermaLink="false">http://xcomputers.wordpress.com/2007/01/29/perl-vs-python-why-the-debate-is-meaningless/#comment-81</guid>
		<description>Perl is not a scripting language, strictly speaking, and neither is Python.  Perl is an extaction and reporting language, and in that field it is pretty unbeatable.  An general application language it is not, nor was ever intended to be.

Perl is the sysadmins friend, because systems administrators do a lot of, well, extraction and reporting.  Want to make sense of several million lines of awkwardly formatted log files ?  Perl is your friend.

My main beef with Python is that it looks like Visual Basic circa 1995.</description>
		<content:encoded><![CDATA[<p>Perl is not a scripting language, strictly speaking, and neither is Python.  Perl is an extaction and reporting language, and in that field it is pretty unbeatable.  An general application language it is not, nor was ever intended to be.</p>
<p>Perl is the sysadmins friend, because systems administrators do a lot of, well, extraction and reporting.  Want to make sense of several million lines of awkwardly formatted log files ?  Perl is your friend.</p>
<p>My main beef with Python is that it looks like Visual Basic circa 1995.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Helgiks</title>
		<link>http://bytebaker.com/2007/01/29/perl-vs-python-why-the-debate-is-meaningless/#comment-80</link>
		<dc:creator>Helgiks</dc:creator>
		<pubDate>Fri, 06 Feb 2009 20:40:02 +0000</pubDate>
		<guid isPermaLink="false">http://xcomputers.wordpress.com/2007/01/29/perl-vs-python-why-the-debate-is-meaningless/#comment-80</guid>
		<description>Haha, that is actually more funny than it is true.</description>
		<content:encoded><![CDATA[<p>Haha, that is actually more funny than it is true.</p>
]]></content:encoded>
	</item>
</channel>
</rss>
