26277 total geeks with 3498 solutions
Recent challengers:
 Welcome, you are an anonymous user! [register] [login] Get a yourname@osix.net email address 

Articles

GEEK

User's box
Username:
Password:

Forgot password?
New account

Shoutbox
MaxMouse
It's Friday... That's good enough for me!
CodeX
non stop lolz here but thats soon to end thanks to uni, surely the rest of the world is going good?
stabat
how things are going guys? Here... boring...
CodeX
I must be going wrong on the password lengths then, as long as it was done on ECB
MaxMouse
lol... the key is in hex (MD5: of the string "doit" without the "'s) and is in lower case. Maybe i should have submitted this as a challenge!

Donate
Donate and help us fund new challenges
Donate!
Due Date: May 31
May Goal: $40.00
Gross: $0.00
Net Balance: $0.00
Left to go: $40.00
Contributors


News Feeds
The Register
I know who "Satoshi
Nakamoto" is, says
Ted Nelson
Google builds
crowdsourcing into
new Maps code stack
Google"s Native
Code browser tech
goes cross-platform
Yahoo! to "share
something special"
in New York on
Monday
Adobe"s Creative
Cloud fails at
being a cloud
NASA signs off on
sampling mission to
Earth-threatening
asteroid
US military
welcomes Apple iOS
6 kit onto its
networks
Jailed Romanian
hacker repents,
invents ATM
security scheme
Climate scientists
agree: Humans cause
global warming
MIT takes
battery-powered
robot cheetah for a
gallop
Slashdot
Yahoo! Japan May
Have Had 22 Million
User IDs Stolen
Ask Slashdot: Why
Do Firms Leak
Personal Details In
Plain Text?
Data Center
Managers Weary of
Whittling Cooling
Costs
Canadian Cellphone
Users May Get
Justice Over
Phantom Charges
Wired Writer
Imagines Google
Island
Syrian Electronic
Army Hits Financial
Times Sites, Feeds
Arduino Branches
Out, With a
Plug-and-Program
Robot
After Kickstarter
Record, Pebble
Smartwatch Lands
$15M From VCs
Electronics-Loving
"Crazy Ants"
Invading Southern
US
Intel Rolls Out
"Beacon Mountain"
Android Dev
Platform For Atom
Article viewer

The Future of Perl?



Written by:dimport
Published by:NeorageX
Published on:2003-06-21 07:19:46
Topic:Perl
Search OSI about Perl.More articles by dimport.
 viewed 15254 times send this article printer friendly

Digg this!
    Rate this article :
I came across this on a mailing list archive recently and thought it really highlighted the current state of perl, I know a lot of OSI visitors are Perl advocates and I’m interested to see your rebuttal to this guy’s points, so, please leave a comment :)

Real quick, Perl OO is nothing more than (most of the time, though they can be array's/scalars too) a hash with two magic variables that say what type of an object it is (read: Perl module name space), and what type of object it's inherited from (read: fall back Perl module name space) and that's about it. Perl OO is by and large a hash with a quick shorthand to method name spaces. It's ugly, a kludge that was grafted on top of an awk replacement, and is as bastardized of an OO implementation as one can find in any language anywhere and I wager few diversified engineers would disagree.

As for Perl 6, I think it's a technological or linguistic Zeppelin: it's dated, dangerous, and just waiting to go down in flames. Java's taken the Perl world by storm these days now that Java's VM is "better" (compared to where it was 4 years ago) and many Perl folk are tired of cleaning up old, broken, hacked together, one-liner-ish code that seemed clever to the writer but is an abomination of engineering or development when reflected upon not more than 3 weeks after inception (plus or minus a few weeks depending on how full the engineer's head is). As I've heard on IRC, "chmod 333 *.pl: you don't loose any of the readability after you've written the file."

Most developers use $_, and @_, and love hiding behind the obfuscation (read: job security). The Perl culture even seems to endorse and take pride in the obscurity that the language provides. I know there are some Perl coding wizards in the crowd reading this saying, "that's not so!," but remember, you're the exception: think about other peoples code and the modules you rely on. In my Perl days, everything was 'use strict;', '-w' compliant, and read like a decent C program. I know now, I was among the few exceptions. If the value of OO is in making systems readable and maintainable, then few could disagree with the fact that Perl is a failed attempt at OO programming.

I remember an interview with Larry Wall saying that Perl would never see a version six and he would do everything he could to oppose such an effort. Someone with purse strings at O'Reilly likely got a hold of him. By most people's measurements, Perl 6 should be a different language, but it isn't. Changing syntax, breaking compatibility, changing the underlying C API's, and breaking existing code is essentially a new language (I know, it's a gross understatement). Kind of a shame that Perl, as it stands, couldn't be left alone to rot and dissolve in the corner as a triumph of hackery and all that could be wrong with engineering: something to only be mentioned in the computer history books.

Frankly, I can't wait till the lightning storm comes to town and lights the massive new Perl Zep on fire. If Perl's lucky, after the fallout and exodus of people, all that'll be left is Parrot and maybe a Perl5 syntax compiler for Parrot. A whole lot of good that will do. Community pressure lead to the preservation of the ugliness and horrific maintainability nightmare that spawned the engineering effort in the first place. Ironic that one of Larry Wall's original statements of Perl will come true even if the version number will be different: Perl6 == Perl5.

When it's all said and done, I'm quite pleased that languages evolve and come and go, I just get annoyed with the ones that don't die quietly, or whine about the good old days. Life moves on, get a grip. For at least the next decade (if elegance prevails, hopefully longer), I've found my language of choice and it doesn't have a super trendy name, nor is it ruled by a money grubbing
corporation with a trumped up marketing budget, and I don't associate this language with going to Starbucks or, for that matter, going to the bathroom after it runs through me (after all, coffee is a diuretic). Call me crazy, but I prefer not associating certain morning rituals with programming, thank you very much.

For me, engineering is, and should always be an elegant and clean methodology that gets applied to a problem. Granted that's not always the case, it is at least the goal. Ruby is powerful, under stated, non-offensive, provides what I need at my finger tips, and has actually started making working through problems fun again. Going back to Parrot, I place higher chances of Matz finishing Rite (Ruby + VM) than I do of Parrot actually taking flight. It'll be interesting to see if Perl dirigible gets paired down to a paper airplane that gets thrown by hand. I for one, can't wait to see it's nose crumple as I have nothing to loose when the exodus happens: I've already moved on from the fame that was Perl and have embraced my new mode of transportation. Ruby's slick, fast, and feels like driving a new BMW after years of a beat up, run down Mustang. Sure there's something retro about putting big tires on a Mustang and tricking it out with a new engine, but what's the point? I have a life outside of my car and don't want to spend every night tuning it up or getting my fingers dirty. Instead I'd rather spend it with my girlfriend or out on a beach staring at the stars: life is more than the sum of the 1's and 0's that we programmers play with during the day. Come time for a challenge and without any real prep, I can hop in my M5 and it will out pace a 'stang any day of the week. If you have to out pace the 'stang, wouldn't you rather be doing it in leather, with a smooth shifting car, that's quiet, has seat warmers, lumbar support, and a killer Bose speaker system?

Ruby's not perfect mind you, but it has the elegant design and ingenuity behind it that makes me believe that one of these days, it'll get there. What really excites me about Ruby and its future is that it will do so elegance and with class. ::shrug:: I don't know about you, but I think wings and a vertical take off would be damn slick on a BMW, don't you? With that said, until the next computer genius comes along and invents something even more slick (transporter???), I'm going to stick with my shinny new BMW. PS And for those interested in having the beverage language carried over to the car analogy, I associate Java with large, ugly, gas guzzling SUVs (which get spanked by even non-tweaked Mustangs).

This article was originally written by Pigsbig78

Did you like this article? There are hundreds more.

Comments:
iamausername
2006-02-06 21:45:53
why do we really need to argue which is better?
if you prefer one programming language than another, then use it, it is generally the case that the best (or most advertised and marketed) product wins.
Perl does a job, and does it well, think about what it was originally made for, and it still does it fine.
In my opinion, it greys the lines between a programming language and a script. really useful when you need something done quickly and effectively. I think it is a reporting language, that is used for quick manipulation. I suppose what you may be saying is perl is reaching too far, trying to do OOP. Remember that if it does the job, then great, if not, and you have the time or resources to use another programming language, then do. and pick one that targets the kind of work that you wish to do.
I think what ends up happening is, you start with one goal in mind, and you keep adding to that goal until the tool you originally used is not suited to the job, so when you get a different tool to use, you realise how much better suited the tool is to the job, and you wonder why you used the original tool in the first place. Do we always need a sledgehammer to hang a picture?

As for your car analogy, it works the same. Some people like cars that have nostalgic values to them, some like the quality of the parts, others like the technology, others the performance.
Do we really need to compare a truck to a sports car? they perform well in their own fields. the sports car won't be able to tow a trailer, and the truck won't win at the track.

I agree with lumbar support though, my back kills me sometimes :)
iamausername
2006-02-06 21:49:42
also, I shouldn't really point this out, but your beverage analogy at the end, ended up being a car analogy again.
thinkt4nk
2008-06-11 17:34:35
I find it perfectly fitting that a Java advocate would use so many words to say so little.
Anonymous
2009-05-11 17:15:42
Touché
Anonymously add a comment: (or register here)
(registration is really fast and we send you no spam)
BB Code is enabled.
Captcha Number:


Blogs: (People who have posted blogs on this subject..)
bb
List the number of files in a directory and each subdirectory on Fri 29th Sep 11am
I needed to get the number of files in a directory and recurse through all subdirectories doing the same. I nedded it so i could compare two sets of directory trees for something I was working on. My Irish chum Enstyne came up with this Perl solution w

Test Yourself: (why not try testing your skill on this subject? Clicking the link will start the test.)
Perl: The basics by sefo

Basic knowledge on often used Perl features


     
Your Ad Here
 
Copyright Open Source Institute, 2006