Slashdot Mirror


State of the Onion 9

chromatic writes "Perl.com has just published Larry Wall's Ninth Annual State of the Onion address from OSCON 2005. In previous talks, he's used screensavers, music, and Unicode to explore Perl and open source. This year, he introduced the cast of characters in the Perl community in terms of spy movies and metaphors."

43 of 174 comments (clear)

  1. And every year by Anonymous Coward · · Score: 4, Funny

    I'm disapointed it has nothing to do with The Onion - the satirical news site.

  2. Re:Any Relation to the News Site? by Anonymous Coward · · Score: 4, Funny

    Any more onion jokes like that and I'll cry....

  3. Screensavers, music, and Unicode? by Anonymous Coward · · Score: 5, Interesting

    Screensavers, music, and Unicode... and photoshopping himself into James Bond photos.

    Hm.

    Well I guess that explains then what he's been doing instead of fricking finishing Perl 6!!!

    Seriously man I have completed a college education and an entire generation of video game consoles have passed in the time that Perl 6 has been coming "Real Soon Now".

    1. Re:Screensavers, music, and Unicode? by Anonymous Coward · · Score: 5, Funny

      Actually, he was patiently waiting for you to finish your college education before releasing PERL 6. Took a while, eh?

    2. Re:Screensavers, music, and Unicode? by chromatic · · Score: 5, Funny
      Well I guess that explains then what he's been doing instead of fricking finishing Perl 6!!!

      The sinister Perl 6 cabal briefly debated unlocking Larry from the chains holding him to his desk for 23 and a half hours every day until the first stable release so he could respond, but this comment has given us a much needed sense of perspective: some random jackass on the Internet has nothing better to do than complain. It's back to the salt mines for Mr. Wall!

    3. Re:Screensavers, music, and Unicode? by lullabud · · Score: 5, Informative
      From my understanding of the situation, it's not his position to be finishing Perl 6, it's the communities.
      "Perl 5 was my rewrite of Perl. I want Perl 6 to be the community's rewrite of Perl and of the community."
      --Larry Wall, State of the Onion speech, TPC4
    4. Re:Screensavers, music, and Unicode? by Nataku564 · · Score: 3, Interesting

      What, you dont like objects?

      Quite frankly, a cleaned up object model is just what perl needs. Well, in addition to some standardized handling of threads, and some other features that most OO languages have.

      Perl isn't Ruby. Perl isn't Python. Perl isn't PHP. Perl is its own animal/vegetable/mineral. It may not be your cup of tea, which is quite obvious, but thats a Good Thing. It means that Perl isn't giving into peer pressure from other programming languages and simply becoming a weak amalgam of language X/Y/Z with a few more dollar signs strewn about.

      I like Perl. It truly makes coding a fun event for me. I am not bound by many of the restrictions of other languages, unless I want to be. It allows me to write a program in a form that more closely resembles the ideas and designs I have in my head than any other language I have tried.

      Go Perl.

    5. Re:Screensavers, music, and Unicode? by slavemowgli · · Score: 2, Insightful

      I agree with chromatic: you obviously don't know a thing about Perl. And I'm not just referring to the technical level here; you probably could code a simple program in Perl, but you'd be working against the language instead of *with* the language, because you ultimately don't grok either Perl or its principles or the community behind it.

      Go and play with PHP, kid. :) You think you may have known Perl, but you really never did.

      --
      quidquid latine dictum sit altum videtur.
    6. Re:Screensavers, music, and Unicode? by hobuddy · · Score: 3, Insightful

      I want Perl 6 to be the community's rewrite of Perl and of the community.

      And that's the chief reason why it's a directionless (or perhaps I should say omnidirectional) disaster that's not even close to production-ready after all these years. Programming language design by committee does not work.

      --
      Erlang.org: wow
    7. Re:Screensavers, music, and Unicode? by Hosiah · · Score: 3, Interesting
      in the time that Perl 6 has been coming "Real Soon Now".

      I know replys that begin "you should be thankful, imagine if..." suck, but:

      Be a Python programmer for awhile and see the *other* extreme: a programming language that never stops being a moving target! Wrote a program in Python yesterday? It's outdated, they no longer use that function, you gotta re-code it. Should you do it today? Nahhh, it's nearly five o'clock, better wait for tomorrow's edition of Python so we get a whole day's use out of it.

      Let's make a deal, six months out of the year, we swap Larry for Guido.

    8. Re:Screensavers, music, and Unicode? by Argon · · Score: 2, Informative

      > Wrote a program in Python yesterday? It's outdated, they no
      > longer use that function, you gotta re-code it. Should you do
      > it today? Nahhh, it's nearly five o'clock, better wait for
      > tomorrow's edition of Python so we get a whole day's use out
      > of it.

      What are you talking about? Can you name any changes that required you re-code your python program? Python major versions have fairly regular and introduce some major features (type unification, generators, decorators etc) but I can't imagine any thing that broke older python programs. Most of my old python 1.5.2 still run without any issues.

    9. Re:Screensavers, music, and Unicode? by Eivind+Eklund · · Score: 2, Interesting

      Do you actually know Ruby? I know both, I program in both (mostly in Perl, for what-pay-my-bills reasons), and I've hardly ever found anything that I could express easier in Perl than in Ruby.

      If there are things, I'm really curious to hear about them, as that should mean that there's some interesing Perl paradigms I don't know...

      Eivind.

      --
      Doubting the existence of evolution is like doubting the existence of China: It just shows that you're uninformed.
    10. Re:Screensavers, music, and Unicode? by Cyno · · Score: 2, Interesting

      Maybe its easier to type, but this seems awkward to me:


      a = %w( ant bee cat dog elk ) # create an array
      a.each { |animal| puts animal } # iterate over the contents

      5.times { print "*" }
      3.upto(6) {|i| print i }
      ('a'..'e').each {|char| print char }

      ARGF.each { |line| print line if line =~ /Ruby/ }

    11. Re:Screensavers, music, and Unicode? by Hosiah · · Score: 2, Informative
      I can't imagine any thing that broke older python programs.

      Well, Blender scripts (specifically anything calling the math module) no go on 2.4, go on 2.3. To name *one* example. And what about the string/character-handling functions? Going through the docs, every other one of them has "Do not use, we're getting rid of this one." stamped all over it. Whole language has been that way since I got into it, where have you been?

  4. What I've learned from Pugs. by CyricZ · · Score: 3, Interesting

    Pugs is a Perl 6 implementation. It is written in Haskell. I recently fooled around with it. What did I learn? Haskell is powerful. Perhaps even more powerful than Perl. Indeed, as a long time Perl programmer I think that I will soon be abandoning Perl in favor of Haskell. Its functional capabilities are extremely useful when writing software that needs to work (think automated verification and such). And that's just the beginning. If the performance of the compiled code of GHC can be improved somewhat, then we might see Haskell revolutionize programming. It will do what Perl did in the early 1990s: open up a whole new set of development opportunities that just plain did not exist.

    --
    Cyric Zndovzny at your service.
    1. Re:What I've learned from Pugs. by slavemowgli · · Score: 4, Informative

      Functional programming has been around for a long, long time, actually, but it has never revolutionised programming, so I'm not sure why Haskell should do it now - it's been around for almost 20 years already, too.

      Not that functional languages don't have their merits, of course, but I honestly don't see why they should suddenly take over and obsolete other programming paradigms now.

      That being said, have you taken a look at Curry? It's a language that combines functional and logical programming (à la Prolog) - definitely rather cool.

      --
      quidquid latine dictum sit altum videtur.
    2. Re:What I've learned from Pugs. by Junks+Jerzey · · Score: 2, Insightful

      Pugs is a Perl 6 implementation. It is written in Haskell. I recently fooled around with it. What did I learn? Haskell is powerful. Perhaps even more powerful than Perl.

      Perl was never about raw power. Perl has always been about providing quick access to stuff you need often: hash tables, regular expressions, plowing through files, and so on. Haskell is a more powerful language on a fundamental level, but not on the day-to-day usability level. They each have their uses.

  5. You know you're tired when by knightinshiningarmor · · Score: 4, Funny

    you read the summary and get the impression that President Larry Wall just gave the 9th State of the Union address and he loves pearls and onions.

  6. Re:Maybe perl is a bad joke.... by Anonymous Coward · · Score: 2, Funny

    so here comes the punchline!

    WHACK! Anonymous Coward slaps Oxodeaddead around the head a bit with a large Perl book! There that will teach you to insult Perl you farty pants VB coder!

  7. An entire generation of video game consoles. by Anon.Pedant · · Score: 3, Interesting

    Wow, an entire generation of video game consoles! What is that, six months?

  8. Finally! by erikharrison · · Score: 3, Interesting

    Last couple "State of the Onion" addresses have been pretty bad - understandable, as Larry was getting increasingly ill, and Perl 5 was solidly in the hands of P5P and Perl 6 not yet pushing anything out.

    Just started reading this one, and it is delighting me by not giving me the impression Larry is on his deathbed.

  9. Oh geez... by gbulmash · · Score: 5, Funny
    This is the first "State of the Onion" I've read, and probably the last. Lots of inside jokes and veiled allusions that the casual Perl dabbler just ain't gonna get.

    With how inaccessible and cryptic it was, you'd think he'd written it in [insert name of programming language here]... ba-dump-bump.

    - Greg

  10. Ridiculous by The+Bungi · · Score: 5, Insightful
    I'm sorry, but a lot of people are waiting for Perl6 and he has photoshopped James Bond, witty dialogue about nuclear weapons and faux videogame graphics. Parrot has been in alpha for what, 5 years now?

    Perl can't continue to subsist solely on its established reputation of being the internet's 'glue'. An entire generation of developers have moved to other languages and frameworks. It looks more like Perl is going to end up as the next COBOL.

    The world is moving on.

    1. Re:Ridiculous by MadAhab · · Score: 2, Informative
      Actually, backwards compatiblity with Perl 5 is a key design feature. But looking at how Perl6 handles class members, accessors, methods, arguments, overloading, inheritance, etc, etc, it's clear that there's a lot to be excited about. It just makes programming easier and more powerful, without (like Java) swallowing the OO koolaid so uncritically that simple things are made hard because "classes good, operators bad".

      Python is a nice language, but it suffers actively from design features that simply try to be unlike Perl - strip the "line noise" out, force tab indenting and what do you get? Opaque variables, hungarian notation, inconvenient editing, programming in widescreen. Whatever.

      --
      Expanding a vast wasteland since 1996.
  11. Re:Could it have been any more boring? by Crusader7 · · Score: 2, Interesting

    You've obviously never heard Larry Wall do one of these.

  12. But COBOL is still used today. by CyricZ · · Score: 2

    Don't forget that COBOL is still used today. It doesn't have the momentum it once had, of course. Perhaps you're right. The very same thing might happen to Perl. It won't be as widely used as it once was, but it will still be very useful to a lot of people. And it will be maintained, and there will be updates.

    --
    Cyric Zndovzny at your service.
  13. Re:From the article by WilliamSChips · · Score: 3, Funny

    Now, now, just because Ruby's block syntax looks like VB's doesn't mean it deserves to be compared to VB...

    --
    Please, for the good of Humanity, vote Obama.
  14. Of course functional programming is ancient. by CyricZ · · Score: 2, Interesting

    Nobody was suggesting that Haskell is the first functional programming language. Of course not! But it has brought pure functional programming to the masses. Haskell's strong typing is a real plus.

    Why is it taking over now? It's because we hit the limits of imperative languages years ago, and we're at the point of hitting the limits of object-oriented programming. That's why we're seeing applications that were traditionally implemented in C (such as a Perl implementation) being implemented using Haskell.

    A language like Haskell allows more complex programs to be developed in less time, with fewer lines of code, and with enhanced stability and maintainability. While Perl was known for such things as well, Haskell offers native code compilation and the benefits of functional programming.

    Indeed, we see that functional programming has had a massive impact on languages like Ruby and Python as of late. That's because the trend is moving towards techniques pioneered by languages like SML, and now made widely usable by Haskell.

    I have looked at Curry, but I am not a fan of logical programming. I much prefer pure functional, or at worst an imperative, OO functional language such as O'Caml.

    --
    Cyric Zndovzny at your service.
    1. Re:Of course functional programming is ancient. by slavemowgli · · Score: 4, Informative

      Oh, I didn't mean to imply that you said that Haskell was the first functional language - certainly not. I merely wanted to point out that Haskell isn't new, so if a revolution hasn't happened yet, why should it happen now?

      I've met many people, especially at the university, who believed that functional languages were the holy grail of programming and that they would be taking over the (computer) world Real Soon Now(tm). But it's never happened, and nowadays, I believe that these people are just out of touch with reality.

      Let's face it - the IT industry is just like any other industry, especially in one regard: things usually happen by evolution rather than revolution. Traits of functional programming languages will certainly find their way into the "mainstream" (and the "mainstream" languages), but nobody'll decide to just throw out all existing code all of a sudden and reinvent everything from the ground up in a new language - no matter how good that language is or, more important, how much better it is than the existing languages. Even object-oriented programming is really an extension of the imperative programming paradigm, not a replacement.

      Paradigm shifts do occur, but they occur over time, and it's a smooth transition, not an abrupt one. Statements like "we've hit the limits of imperative languages" may sound cool, but they ultimately don't mean anything - the limits are changing. Boundaries *can* be pushed, and *that* is something that is *especially* true in the computer industry in general and the software industry in particular.

      I won't deny that I'm not a fan of functional programming languages myself, of course. Personally, I think they're rather unnatural; it may be easier to model their semantics mathematically (and the mathematical models will be more "natural", too), but I also think that the step-by-step approach of imperative languages is more natural for the human mind - it's how we do things, and that's probably why imperative languages took off when functional languages didn't (and for the record, both functional and imperative programming language started at the same time, in the mid-50s, and the theoretical foundations, in the form of Turing machines and lambda calculus, also popped up at about the same time).

      Nevertheless, I do realise that functional programming languages have some very interesting and useful features, and I'm certain that these will be incorporated into existing languages (or new languages based on existing ones, in the sense that Java is a new language based on C, for example) eventually - and that's a good thing. Pure functional programming, however, will (IMO!) always remain a specialised niche for certain, mostly mathematical (that is, theoretical) problems that naturally lend themselves to being modelled in functional ways.

      --
      quidquid latine dictum sit altum videtur.
  15. Forced labour is not the open source way. by CyricZ · · Score: 4, Insightful

    Forcing people to work is not the open source way. If he wants to work on Perl 6, then he'll do so. If he'd rather play around with Photoshop, then he'll do that, too. To suggest that he should be forced into working on his open source project, a project that has been a godsend for hundreds of thousands of programmers over the last decade and a half, is just plain ignorant. That's just not how things work in the open source community. Contributions are valued and appreciated, but nobody is forced to contribute.

    --
    Cyric Zndovzny at your service.
    1. Re:Forced labour is not the open source way. by Eivind+Eklund · · Score: 2, Insightful

      s/has been a godsend for hundreds of thousands of programmers/has fooled hundreds of thousands of programmers into using an inappropriate tool/

      Perl6 is, in my opinion, a mistake. Probably perl5 was also a mistake (I've written many tens of thousands of lines of code in Perl5, and work with it full time, so I have some idea what I'm talking about). Perl4 was decent, for doing what Perl4 was used for - the Perl5 extensions make it *seem like* Perl is usable for more tasks. Actually, it IS usable for more tasks, and even more so than perl4 - just like a screwdriver with something protecting the head is more usable as a hammer than a screwdriver without something protecting the head.

      For the space that Perl5 and especially Perl6 is trying to fit into, Ruby is the best design I know of today - design-wise and convenience-wise it improve on Perl5 in almost every way.

      There's three particular usecases where it doesn't improve:
      - Perl is better for one-liners (command line use).
      - Perl is better if you need some particular obscure library from CPAN
      - The change of the type system to actually have strong typing (instead of automatically converting between text and numbers) can be slightly inconvenient in some text parsing cases.

      Apart from that, I've found Ruby to generally just be better. Half as much to type, more consistent, more powerful.

      Eivind.

      --
      Doubting the existence of evolution is like doubting the existence of China: It just shows that you're uninformed.
  16. Re:From the article by pnatural · · Score: 2, Insightful

    Python is named after Monty Python, not a reptile. Fear off!

  17. Perl Had Too Much Security by istartedi · · Score: 3, Interesting

    Job security, that is. It was so easy to write "job security applications" in Perl that even PHBs caught on to it. The next web scripting language should be based on a very careful study of how obtuse the syntax can be before the cost of maintaining it will be enough to make IT managers cry "enough is enough!" and throw out the entire application. And yes, although I was not the actual maintenance programmer on a Perl app, I was close enough to those who were to understand what had happened, The nature of Perl is such that it was probably not intentional. I mean, it looked like the code was well organized, but no God help anybody who wanted to change it.

    --
    For all intensive purposes, "whom" is no longer a word. That begs the question, "who cares"?
    1. Re:Perl Had Too Much Security by Nataku564 · · Score: 2, Interesting

      I maintain a somewhat large Perl framework at my workplace. Designed properly, Perl can be very maintainable. Its particularly awesome for the kinds of hack jobs the financial industry demands.

    2. Re:Perl Had Too Much Security by stesch · · Score: 3, Insightful

      You don't need a special web scripting language to do web programming. That's the mode of thinking that brought us PHP. :-(

  18. Unless... by sootman · · Score: 2, Informative

    ...he can top "Perl6 will give you the big knob," I see no reason to tune in. :-)

    --
    Dear Slashdot: next time you want to mess with the site, add a rich-text editor for comments.
  19. Re:Perl 6 is a mistake. by slavemowgli · · Score: 2, Insightful

    It's amazing how quickly you can cast off Perl 6 when there's not even an alpha version of the interpreter yet (Pugs doesn't count) and when even the specs are not set in stone yet.

    I think what you're exhibiting here is what I'd like to refer to as an "inverse God complex"
    ("inverse" is not the best word, admittedly, but I can't think of a better one) - you do a thought experiment where you try to do something (improve Perl), find that you can't do so in two minutes, and thus conclude that failure is *inevitable* (hence a God complex: if you can't do it, noone can) and that any *actual* attempt to do so must automatically fail as well.

    Nevermind, of course, that lots of people, most of them much more intelligent than you and me, have worked on this problem for years; you're still able to not only dismiss their current work, but also all the work they have not done yet and conclude that they're not only doomed to fail, but in fact fail so catastrophically that Perl will die - that is already is dying.

    Yes, definitely a God complex. Sorry.

    --
    quidquid latine dictum sit altum videtur.
  20. Re:Questions for Larry by slavemowgli · · Score: 4, Insightful

    I'm not Larry Wall, but let me answer that one for you:

    You should not stick to Perl religiously but rather use the best tool for the job you need to get done. TIMTOWTDI, remember? If Python works for you, that's fine; if Python works better for you than Perl, then by all means, do use Python!

    That's not to say that your decision to use Python is automatically right, but it's not automatically wrong, either, and without any knowledge whatsoever about the project you're working on, your personal preferences, your experiences and all that, how do you expect *us* (that is, the Perl community, although I can only speak for myself, of course) to tell you whether Perl or Python is the better tool for your job?

    That's up to you to decide - we don't care what you use, although we may be interested in hearing why you didn't choose Perl.

    --
    quidquid latine dictum sit altum videtur.
  21. Whitespace by Sweetshark · · Score: 2, Funny

    > (and not one with loads of irritating whitespacethank you very much).
    If thats the only problem with Python (and until you are a bit more explicit, one can pretty much assume so), its gotta be a great language.

    (Oh, BTW you are missing a whitespace there between the words "whitespace" and "thank")

  22. pageturning issues by zoogies · · Score: 2, Interesting

    Am I the only one for whom the "next" completely fails at life and the internet? It's not just that, sometimes clicking on the page numbers does it too - sometimes. A firefox thing, or is it their fault?

  23. Re:Perl 6 is a mistake. by moof1138 · · Score: 2, Informative

    Your post seems oddly familiar...

    Perl 6 is a mistake

    Perl 6 is a mistake

    Perl 6 is a mistake

    This is really getting to be a bit tiresome.

    BTW, moderators, please stop modding this troll up over and over every time Perl comes up.

    --

    Hyperbole is the worst thing ever.
  24. Re:From the article by pnatural · · Score: 2, Insightful

    Well, if you're browsing books at BN, don't pick up this one!

    ftp://ftp.ora.com/pub/graphics/book_covers/hi-res/ 0596100329.jpg

  25. FP strikes back by SolitaryMan · · Score: 2, Informative

    I honestly don't see why they should suddenly take over and obsolete other programming

    I'm not sure about "obsolete" thing, but functional programming strikes back -- that is for sure. Why I say that? First, because I've learned from pugs the same thing: Haskell is powerfull. And there are many other guys, so haskell bacame more popular, thanks to Pugs and Autrijus Tang, its leading developer. Second, new programming languages are adopting functional features: map, reduce, lambda in python for instance. There will be many of them in Perl6. Then Sun is developing new programming language Fortress, which is rather functional too. Why haskell? Haskell is pure and with age of parallel and grid computing at hand this is very important feature!

    --
    May Peace Prevail On Earth