Live data from Hacker News

Why Perl?

bits.shutterstock.com

41–50 of 118 posts

Re: Why Perl?

#42
post #27

Earlier quoted context omitted.

Also, Ruby's lack of @ $ % is great. And the fact that it has a single object model, not falling to the Paradox of Choice[1] makes it a great alternative to Perl. And what is best: I've never seen anyone that loved Perl not enjoy Ruby. They both have very similar ideologies, but Ruby stands on the shoulders of Perl, Smalltalk and Lisp. Therefore it could see farther. [1] http://en.wikipedia.org/wiki/The_Paradox_of_Ch…

"In Ruby, ordinary variables lack sigils, but "$" is prefixed to global variables, "@" is prefixed to instance variables, and "@@" is prefixed to class variables."[0] Okay, I don't know Ruby well enough to know if these are commonly used features, but the statement that there are no sigils is false. [0] http://en.wikipedia.org/wiki/Sigil_(computer_programming)#La...

@ is common.. The others are pretty rare.

Re: Why Perl?

#43
post #12

I've said it before and I'll say it again: other imperative scripting languages feel like incomplete subsets of Perl. And the community is fantastic.

This is the language that doesn't have proper function arguments, exceptions, objects, etc, and you're calling OTHER languages a subset? Sorry, I just don't see it. What exactly is so awesome in Perl that isn't easily done in Python/Ruby/Scala/D/Haskell?

Re: Why Perl?

#44
My perspective on Perl is that it's like a Dremel tool.

If you've ever had a household project that requires a tool you don't have or skill you don't know, you can usually take your Dremel out, dig through the gift pack of attachments that you received for Christmas, and find a way to do what you need to do.

Will the results be pretty? No. Is it the best way to get the job done? Probably not -- but it's good enough.

Perl's great because it has the power to do lots of things, quickly, and without alot of drama. It's dangerous because it's just good enough to keep some hastily written program around too long. Many "black box" processes written in unintelligible Perl by persons unknown haunt data centers all over the globe.

I enjoyed the time I spent with Perl immensely. But I spent it as a individual sysadmin/DBA turned developer integrating lots of complex systems on multiple platforms a decade ago. (For better or for worse, some of those apps are still working!) For a team of programmers in 2011, there are probably tools out there that will do the job better for the same price.

Re: Why Perl?

#45
post #27

Earlier quoted context omitted.

Also, Ruby's lack of @ $ % is great. And the fact that it has a single object model, not falling to the Paradox of Choice[1] makes it a great alternative to Perl. And what is best: I've never seen anyone that loved Perl not enjoy Ruby. They both have very similar ideologies, but Ruby stands on the shoulders of Perl, Smalltalk and Lisp. Therefore it could see farther. [1] http://en.wikipedia.org/wiki/The_Paradox_of_Ch…

"In Ruby, ordinary variables lack sigils, but "$" is prefixed to global variables, "@" is prefixed to instance variables, and "@@" is prefixed to class variables."[0] Okay, I don't know Ruby well enough to know if these are commonly used features, but the statement that there are no sigils is false. [0] http://en.wikipedia.org/wiki/Sigil_(computer_programming)#La...

Ruby even uses some predefined globals (eg $_) that are pretty much straight out of Perl.

http://www.tutorialspoint.com/ruby/ruby_predefined_variables...

Re: Why Perl?

#46
post #35

Earlier quoted context omitted.

As a user of dists all that stuff is extremely important to you for two reasons: For one, it means the dists are of higher quality because authors have better tools at their hands and get poked to increase quality. For the other, as a user you can tell whether the dist works on your particular system without even installing it and if it doesn't, you can easily find out on what system it DOES work, or which previous v…

I guess understanding why purely language bound code (which most likely accounts for 95% of the packaged code out there), e.g. an object system, would need testing across the cartesian product of all versions, all OSes and all archs, is beyond me... I guess when you have a language that doesn't have a specification, you require things like this...

It doesn't need it. It just gets it because the ecosystem is there and automatically does it for everything. The database interfaces get it, the Windows Process Memory access library gets it, the Hiragana learning tool gets it. Doesn't matter how big or small the project is, the service is provided for free, for all.

That is why i said the other languages have a long way to go yet; no matter how much you try to shift goal posts or resort to out-of-band attacks.

Re: Why Perl?

#47
post #4

This is really just a checklist that can be applied to any language. So yes, why not Perl after all...

Honestly, the only point there that applies to any language is the "freedom" one. The rest are, with varying margins, real differentiators. Especially the CPAN ecosystem one. No other language has that.

Having worked on real-world projects in Perl, Python and Ruby, I can tell you that CPAN is not a differentiator. It doesn't matter if there are gazillions of packages to choose from. What matters is if I can find the packages I need to do the job. I remember working on a Perl project and being mocked by a Python guy because I had to implement a library that was already available for Python. On the other hand, I could choose from many different Perl packages to help me write classes and do things that Python does out of the box.

Re: Why Perl?

#48
post #27

Earlier quoted context omitted.

Also, Ruby's lack of @ $ % is great. And the fact that it has a single object model, not falling to the Paradox of Choice[1] makes it a great alternative to Perl. And what is best: I've never seen anyone that loved Perl not enjoy Ruby. They both have very similar ideologies, but Ruby stands on the shoulders of Perl, Smalltalk and Lisp. Therefore it could see farther. [1] http://en.wikipedia.org/wiki/The_Paradox_of_Ch…

"In Ruby, ordinary variables lack sigils, but "$" is prefixed to global variables, "@" is prefixed to instance variables, and "@@" is prefixed to class variables."[0] Okay, I don't know Ruby well enough to know if these are commonly used features, but the statement that there are no sigils is false. [0] http://en.wikipedia.org/wiki/Sigil_(computer_programming)#La...

You are right. What I should have said is: "the lack of sigils to indicate type of a variable". In perl this noise is everywhere, while in Ruby its is a lot less common.

Specially if you use accessor methods. In ruby, unlike smalltalk, this instance variable sigils are pretty much impossible to get rid off. This is because in Smalltalk local variables have to be declared, and if you don't, the Language will try to use the instance variables. In Ruby it would default to being a local variable, if already assigned, or invoking a method with no arguments.

Re: Why Perl?

#49

One of the main points that caught my eye while reading this was the fact that the author mentioned that Perl programmers love their language. As a Perl hacker, I couldn't agree more, and that's the main point I guess. Sure, CPAN is awesome (there is even a module for controlling USB rocket launchers - http://search.cpan.org/~pen/Device-USB-MissileLauncher-Rocke... ) and everything is open source, but the thing I lov…

I think this issue is where a lot of the schism comes from - not everyone's thoughts translate well into perl. I've tried to "get" perl a few times, and I also get tasked with maintaining legacy perl code from time to time. Perl is the only language I can't readily use without a few books and perldoc.perl.org handy. It just doesn't fit my brain - yet I can jump around in other languages with little trouble. Maybe it'…

Sometimes it takes a while to click. I abhorred `map` for the longest time, but nowadays i use it everywhere; since i read the SICP and suddenly grokked them.

Re: Why Perl?

#50
post #35

Earlier quoted context omitted.

I guess understanding why purely language bound code (which most likely accounts for 95% of the packaged code out there), e.g. an object system, would need testing across the cartesian product of all versions, all OSes and all archs, is beyond me... I guess when you have a language that doesn't have a specification, you require things like this...

It doesn't need it. It just gets it because the ecosystem is there and automatically does it for everything. The database interfaces get it, the Windows Process Memory access library gets it, the Hiragana learning tool gets it. Doesn't matter how big or small the project is, the service is provided for free, for all. That is why i said the other languages have a long way to go yet; no matter how much you try to shift…

yes, but the point is if the utility provided by these "dists" would be mostly useless for other languages, then it's hardly honest to use said feature to promote CPAN (and therefore perl) against other languages.

the review system is a questionable advantage too, as I don't want to go digging through 16 SMTP packages to find the best one, and especially as I suspect most people install CPAN modules through the command prompt (or via their distro's package manager), rather than digging through a website.

I also note that Python tends to adopt the best packages into the standard library...

Post reply on HN