Live data from Hacker News

The Perl Renaissance

lanyrd.com

41–50 of 130 posts

Re: The Perl Renaissance

#41
post #37

Earlier quoted context omitted.

When programmers discuss Python on the web, this comes up again and again. I agree with you - it is a minus for me in terms of using Python. There are "solutions", there are people who say you get used to it, there are people who say it does not matter, yet it comes up again and again. I guess it does matter, to some of us at least. I can open up a text editor and start writing C, or Java, or Perl, or PHP - all witho…

So technically not "do/while", but: while(some_condition): do_stuff

More like:

  do_stuff
  while(some_condition):
    do_stuff

Re: The Perl Renaissance

#42

Earlier quoted context omitted.

Python and Ruby both have garbage collectors and can deal with reference cycles. Perl only has reference counting, leading to programs that leak memory due to reference cycles and needing to hunt down where in the code you're creating them. It's the only high-level language I know of that only has reference counting for memory management.

> It's the only high-level language I know of that only has reference counting for memory management. It's also the only high-level language I know of that can't really be parsed ("only Perl can parse Perl" they say). It's a dead language really, you can also see this from the number of noisy evangelists vs. professional users nowdays (and that comes from someone who has used Perl almost exclusively for the past 10 y…

"you can also see this from the number of noisy evangelists vs. professional users nowadays"

Actually, where I work, we use Perl almost exclusively. I don't know a single person who I would consider a "noisy evangelist" - we just quietly get stuff done.

Re: The Perl Renaissance

#43
post #13
post #2

...don't get mad for the question, but: anybody has any arguments for using Perl instead of, let's say Python, these days? (besides the "I already know it incredibly well" argument) ...cause the lack of an answer to such a question has only one conclusion: the language is dying, even if this is not already happening in a visible way! (don't get me wrong, I'm not a Perl hater, and fyi, I think the world would be a muc…

...don't get mad for the question, but: anybody has any arguments for using Python instead of, let's say Ruby, these days? (besides the "I already know it incredibly well" argument) ...cause the lack of an answer to such a question has only one conclusion: the language is dying, even if this is not already happening in a visible way! (don't get me wrong, I'm not a Python hater, and fyi, I think the world would be a m…

The superb community is one of Python's biggest assets, especially when compared to the Ruby community.

The Python community is made up of some very smart and talented experts. Their emphasis is on developing high-quality software, and doing things properly. Egos are kept in check, and there are always many people willing to offer a helping hand to those who are new to Python.

The Ruby community is generally quite different. There is a much bigger emphasis on celebrity and ego, and being "trendy". The attitude toward software development is different, too, with much more emphasis on producing a lot of code quickly, even if it has security flaws or other serious problems. It's more about being seen and heard, rather than doing.

I'd put the Perl community somewhere in between the Python and Ruby communities. Back when it was more prominent, it had a more lively set of participants than we than we find in the Python community, but a much higher degree of technical aptitude than we find in the Ruby community.

Re: The Perl Renaissance

#44
post #29

Earlier quoted context omitted.

Opinions on Python aside, I'd never hire somebody saying something like that at an interview, even about a language I don't like. You should really look past petty details when evaluating any tech and come up with actual arguments.

Really, why ? You wouldn't hire someone that has some "language aesthetic preferences", although a bit different that the mainstream ones? He said "preventing me for ever liking Python" not "I'll never touch it because of this".

This is really the same as saying, "I won't work for company X because I don't think the brackets in the C++ code should be on the following line[1]!"

[1] E.g.:

  int main() {
  }
vs.

  int main()
  {
  }
This is an apt analogy because most companies will have some sort of code style guide that you have to follow, which doesn't make "coding at company X where bracket placement is enforced" much different from "coding in Python where whitespace is enforced."

I've yet to come across someone that had a severe hatred of Python due to the significant whitespace that was a programmer I respected. The last person that I knew (who had a visceral hatred of Python whitespace) wrote Perl code like this:

  sub func1 { shift->func2(shift)->func3(@_) }
or

  sub func1 { grep { $_[0]->func2($_) } $_[0]->func3() }
Note: These are literally code samples with the function names changed.

I don't know any Perl programmers that would condone this sort of code. It's a maintenance nightmare, especially since these were not one-off instances. Seems to me that the people that have a hatred of Python's handling of whitespace don't like being 'constrained' by their language, and are probably happier with Ruby or Perl.

Re: The Perl Renaissance

#45
post #37

Earlier quoted context omitted.

When programmers discuss Python on the web, this comes up again and again. I agree with you - it is a minus for me in terms of using Python. There are "solutions", there are people who say you get used to it, there are people who say it does not matter, yet it comes up again and again. I guess it does matter, to some of us at least. I can open up a text editor and start writing C, or Java, or Perl, or PHP - all witho…

So technically not "do/while", but: while(some_condition): do_stuff

No, it's actually this:

  do_stuff
  while(some_condition):
    do_stuff
The advantage of do/while in this situation is avoiding the duplicate code.

Re: The Perl Renaissance

#47
post #13

Earlier quoted context omitted.

...don't get mad for the question, but: anybody has any arguments for using Python instead of, let's say Ruby, these days? (besides the "I already know it incredibly well" argument) ...cause the lack of an answer to such a question has only one conclusion: the language is dying, even if this is not already happening in a visible way! (don't get me wrong, I'm not a Python hater, and fyi, I think the world would be a m…

The superb community is one of Python's biggest assets, especially when compared to the Ruby community. The Python community is made up of some very smart and talented experts. Their emphasis is on developing high-quality software, and doing things properly. Egos are kept in check, and there are always many people willing to offer a helping hand to those who are new to Python. The Ruby community is generally quite di…

  | Their emphasis is on [...] doing things properly
Too bad that doesn't extend to a better solution to packaging / deployment. :P

Re: The Perl Renaissance

#48
post #5
post #2

...don't get mad for the question, but: anybody has any arguments for using Perl instead of, let's say Python, these days? (besides the "I already know it incredibly well" argument) ...cause the lack of an answer to such a question has only one conclusion: the language is dying, even if this is not already happening in a visible way! (don't get me wrong, I'm not a Perl hater, and fyi, I think the world would be a muc…

Python significant white space. Really, that's what preventing me for ever liking Python.

When you're writing code in Perl, Ruby or some other language, do you normally not use any indentation? Do you leave all of your code left-aligned?

Re: The Perl Renaissance

#49

Earlier quoted context omitted.

> It's the only high-level language I know of that only has reference counting for memory management. It's also the only high-level language I know of that can't really be parsed ("only Perl can parse Perl" they say). It's a dead language really, you can also see this from the number of noisy evangelists vs. professional users nowdays (and that comes from someone who has used Perl almost exclusively for the past 10 y…

"you can also see this from the number of noisy evangelists vs. professional users nowadays" Actually, where I work, we use Perl almost exclusively. I don't know a single person who I would consider a "noisy evangelist" - we just quietly get stuff done.

Maybe the noisy evangelists are the only ones with enough confidence to publicly proclaim that they use Perl. The others lack confidence and don't publicly announce it because the general programming community responds with disdain / pity.

Re: The Perl Renaissance

#50
post #7

Earlier quoted context omitted.

CPAN ~ pypi ~ rubyforge. Ruby allows you to write decent one-liners too, though people don't like to use it this way. the only argument I can extract from this is "Perl has a much nicer syntax for working with regexps", and I agree with this (and I hate it when other languages don't fully embrace regexps and treat them as first class citizens). but that's the thing, not even the "reasons not to use it" are unique to…

work uses pypi every day, and I had to set up a caching proxy because mirrors are frequently unavailable. It was inconceivable coming from CPAN that the major package distribution network for a major language may be down.

I had to deal with the major third party, more or less essential, Ruby and RoR gems a few years ago. Rubyforge was a part of this constellation of essential third party gems. Dealing with gems was definitely dependency hell, with mixed up cross dependencies, which were dependent on certain versions of other gems, that were sometimes conflicting when there were a number of gems. Also, you would go to the main Ruby web pages and click links to documentation and the links would be broken - not some obscure, old documentation page to another old, obscure module, but from central help web pages to other pages of central importance.

I have used CPAN for many years and it is so much more rock solid and automagic. If a mirror is down it jumps to the next one without a beat.

The CPAN modules are great too. I was using XML:Simple recently, but the XML files got too big. So I looked around a little and started using XML:Twig, which works great. Then I needed to sort alphabetically words in a variety of languages. So I went with Sort:ArbBiLex which allows me to create my own sort dictionary and has suggested Western language dictionaries on the documentation page. And yes, it has a cmp call which allows for easy multi-column sorting. For whatever problem I have, it seems someone has already written a module for it, which I can get going with little effort.

Post reply on HN