State of the Onion 7 230
chromatic writes "One of the highlights of every OSCON is Larry Wall's annual State of the Onion address, covering Perl, philosophy, linguistics, music, theology, science, and usually a few other things thrown in for good measure. His talk from OSCON 2003, State of the Onion 7, is now online."
He's a funny b@stard.... (Score:2)
heh...polly wanna cracker?
Re:He's a funny b@stard.... (Score:2)
My experience (Score:5, Insightful)
"Let's take another look at the pink tennis court. I mean, the universal architectural diagram. It really isn't quite as universal as I've made it out to be. First, let's get rid of the pink."
This is the thoughts of the man behind perl. This explains a *lot* about perl.
Re:My experience (Score:5, Funny)
Re:My experience (Score:2, Insightful)
Indeed. "Hard to follow" is just about the worst attribute a piece of code can have, while "clever" doesn't get you anything except bragging rights among other kamikaze coders.
Good v. Bad. Work v. play (Score:2, Insightful)
There are good programmers and bad programmers. Good programmers can write clear, easy to follow code in most languages (exceptions being Malbolge and Intercal). Bad programmers manage to make life incredibly difficult no matter what their chosen tongue.
I'd be reluctant to use Perl at work for any code that has to be maintained by anyone exc
Re:My experience (Score:3, Funny)
Or "Give it up for me! Woooooooo!", a la Steve Ballmer.
Re:My experience (Score:3, Informative)
I have no idea if Larry Wall is like this all the time, but in his annual State of the Onion speech, what you see here is normal, and I think generally seen as just a fun aspect of Perl culture. YMMV.
unintentionally insightful (Score:5, Insightful)
Both are very, very amusing/accessible, and very complex.
If you skip around in an attempt to "get" either of them, looking for an executive summary, you end up walking away scratching your head, because neither was "designed" (although Larry would have no trouble with that word, I do) that way. They both evolved (and now I'd really wonder what Larry would say to *that*).
But if you give a little time towards trying to understand them, both are hugely rewarding, make you think, and have proven themselves extremely useful.
The "peeling an onion" metaphor is is especially apt - there's always something new to learn.
That metaphor... (Score:2)
Yes, working with Perl is very much like peeling an onion. After five minutes I walk away crying.
Listening to Larry's speeches also leaves me crying, but it's crying with laughter.
I think I can Answere That (Score:2)
On a side note, I do not know Larry Walls feelings concerning biological evolution. I can say, h
Re:I think I can Answere That (Score:2)
The above was really what I was getting at.
It was only a tiny aside, a sort of a nod to the word games Larry tends to play.
Re:I think I can Answere That (Score:2)
Re:unintentionally insightful (Score:2)
Re:unintentionally insightful (Score:2)
Re:My experience (Score:4, Insightful)
This explains a *lot* about perl. . I thought the same thing in two ways: (1) Perl is a motley and this shows why; (2) Perl needed someone like Wall for the community to form. Constructing both a language and community is more like performance art than an exercise in BNF. In general the audience enjoys the performance when the performer is also engaged - and I suspect he was having a blast.
If you like your philosophy written more seriously - please take some Tristan Tzara [cwd.co.uk] as an antidote.
Re:My experience (Score:2)
Despite years of technological advance and the arrival of open source software in the marketplace, onions remain a spherical shaped vegetable which grow in the ground. Because of their strong flavour, onions are typically used as a garnish on many different foods. Fried onions especially emit an odor which makes many people hungry, even people who don't like onions. Since nearly every culture makes us
In Soviet Russia... (Score:5, Funny)
Is Larry a slashdot regular ? :)
Now, some of you young folks are too steeped in postmodernism to know anything about postmodernism, so let's review. Postmodernism in its most vicious form started out with the notion that there exist various cultural constructs, or texts, or memes, that allow some human beings to oppress other human beings. Of course, in Soviet Russia it's the other way around. Which is why they managed to deconstruct themselves, I guess.
This is one example (Score:2, Interesting)
Re:In Soviet Russia... (Score:5, Informative)
Re:In Soviet Russia... (Score:4, Informative)
Or rather, (Score:2)
The Onion? (Score:2, Offtopic)
Ponie (Score:4, Informative)
For those who are wondering, a 'pony' is cockney rhyming slang for crap:
Pony and trap: crap.
Re:Ponie (Score:3, Informative)
Re:Ponie (Score:4, Informative)
"I wanna pony!"
"Here, stroke the lovely pony."
"Pony drop!" - lots of ponies for the terminally stressed.
The origins of the phrase are lost in the mists of time. However, it's possible that someone was acting quite a lot like a seven year old at the time.
Re:Ponie (Score:2)
http://www.ponie.org/ [ponie.org]
State of the Onion (Score:2, Funny)
Re:State of the Onion (Score:2, Funny)
Larry Wall is Ned Flanders. (Score:5, Funny)
Re:Larry Wall is Ned Flanders. (Score:2, Funny)
my favorite (Score:3, Funny)
Boy, was this right on target or what?
Re:my favorite (Score:2, Insightful)
Re:my favorite (Score:2)
Is there a word in English for "that horrible combined laughing/sobbing done when the brain is presented with a 'Wow, that's really hilarious/Oh, Jesus, it's really not' dichotomy"?
Re:my favorite (Score:2)
I think we agree on much of our thinking regarding this current economy, but I disagree with this statement. The economy under Clinton seemed OK at the time, but it wasn't: it was a bubble just waiting for the right moment to burst. I think now we have to look back on the tech boom and the Internet craze as a rather anomolous and unhealthy phase---unhealthy because people acted (and spended) under th
Cheap (Score:2, Insightful)
I don't know Perl, but I know I like the text and I get his points. It makes me consider studying Perl.
There is some really interesting low level language stuff going on. State of the art I suspect.
You sir, are part of the ungrateful and you are certainly unwilling to get any clue about the article at all. You only produce a cheap flamebait...
Threat to Perl (Score:5, Funny)
Re:Threat to Perl (Score:2)
But it's technically accurate, because he said that the Ebonians said so.
IT Workers' Creed (Score:5, Funny)
We the unwilling,
led by the unknowing,
are doing the impossible
for the ungrateful.
We have done so much for so long with so little
We are now qualified to do anything with nothing.
You would be surprised... (Score:5, Informative)
Source here. [brainyquote.com]
-Cyc
You would also be surprised... (Score:5, Informative)
D'oh! (Score:2)
-Cyc
Re:You would be surprised... (Score:2)
And she would have definitely died unremembered had she been unwilling.
Re:IT Workers' Creed (Score:2)
We are now qualified to do anything with nothing.
This seems vaguely reminiscent of an old joke about specialists, that goes something like this:
"A specialist is someone who has learned more and more about less and less until eventually [s]he knows everything about nothing."
A generalist, of course, can be defined conversely. Using this principle, we can now set forth the "IT Manager's Creed", whose details are left to the reader.
Re:IT Workers' Creed (Score:2)
I still maintain that whoever wrote this MUST have worked in IT.
"We the unwilling" does sum up my IT encounters, not so sure about the rest of it though...
Re:IT Workers' Creed (Score:2, Interesting)
"Never in the field of human endeavor,
have so many unwilling given nothing
to so many with so little for so long"
Oh, the humanity! (Score:5, Funny)
For God's sake, give this man back his caffeine!
Hmmm (Score:5, Insightful)
Larry Wall is everything that Eric Raymond believes himself to be.
Re:Hmmm (Score:2)
Re:Hmmm (Score:2, Insightful)
But what exactly has he hacked? A kernel config tool that everyone else hated, fetchmail (a program that speaks POP3 and SMTP and is notorious for eating mail), and a few quick hacks for converting PNGs, some trivial solitaire-type games and a few others. (Info from here) [catb.org] Essentially, a bunch of applets. Not completely unimpressive, but given he's been at it 20 years, it's hardly the output of the uber-hacker he likes to pre
Re:Hmmm (Score:2)
Re:Hmmm (Score:3, Informative)
adding that
I don't think theres any doubt he is numbering himself amongst the qualified, since he writes
Re:Hmmm (Score:2)
Re:Hmmm (Score:2, Interesting)
Interesting that you provide a link to his "software" page and yet you still claim that all he's worked on is a "bunch of applets". Wow. Way to trivialise someone's work. *roll of eyes* How long did it take you just to read through and comprehend that list of software? Note especially the stuff under the heading "Other People's Software", indicating major projects he's contributed to.
I wrote a comment a little whi [slashdot.org]
Re:Hmmm (Score:2)
ESR (Score:2)
His detractors make fun of stuff like this. [catb.org]
Re:Hmmm (Score:5, Insightful)
They're rather more like the Wozniak and Jobs of the computer worl- oh, wait, guess I can't say that. I'll say it anyway.
Seriously, though, both of these guys are very important to the present and future of computer programming. However, they fill different niches, much like the two Steves. They're not in direct competition. They're both visionaries, but one is more apt to build tools and the other is more apt to evangelize, in order to see their visions come true. I don't know these guys in real life, but I would be surprised to find any enmity between them, which I'd expect to find if one of their egos got deflated by the other's abilities.
A guy tried to impress me once by saying he once worked for or with ESR in some fashion. He couldn't explain exactly what he did or learned from the experience, so I treated it as starry-eyed syndrome or self-ego-building and ignored it. After all, when you work for an evangelist, your time is spent pushing the vision. It's hard to easily point to projects being done now and say that the Cathedral and the Bazaar and Magic Cauldron essays were directly responsible, but their perceivable impact will build over time. Oh, and there's something about him and open source, too, (whatever that is)...
The people I actually look up to when it comes to programming, on the other hand, almost always know perl, or at least feel inadequate if they don't. While it's not hard, learning it is an indication that you're serious about what you're doing. Larry's tools incorporate his ideas about how things should be done, (or that there's really not any one way some things have to be done, actually) and that invites quicker uptake on the part of people just trying to get things done.
(I'm only a dilettante, myself, but even I've been affected by Mr. Wall, anyway - my worthless claim to relevance, when I futilely try to impress people with name-dropping, is that I emailed Kibo when I was a kid asking about his usenet-searching script, and he told me this Larry guy had a new language, and I should talk to him for details on how to parse it. If only I was as willing to learn at the time as Larry always has seemed to be, to teach! Which is yet another trait he seems to share with Mr. Wozniak.)
Enough with the flames already (Score:5, Insightful)
Sure Larry can be a bit eccentric but he's mildly amusing and he has some really good ideas about language design that challange the current ones. He's also willing to learn from good ideas from other languages (Creating a VM for example for multiple languages to target to).
And another thing, the whole "You can't read Perl or figure out old programs" bit is getting old. You can do that in ANY language. You can also follow some generally accepted formatting rules and your code will look just fine and be readable by any halfway experienced coder.
Rant off.
Re:Enough with the flames already (Score:5, Funny)
Re:Enough with the flames already (Score:2)
Re:Enough with the flames already (Score:4, Informative)
I have written some code in Java and Perl for doing similar stuff (using text templates), and the perl code looks like someone is explaining in plain english. With perl5 and modules from CPAN , one can write very clean code.
S
Perl 6 is the Devil (Score:3, Interesting)
Re:Perl 6 is the Devil (Score:2)
Perl 6 is Esperanto (Score:2)
I dunno, the response to lini's question [perl.org] scares me.
So the best case scenario is that understanding Perl 6 programs written by gurus will require knowing the syntax of a bunch of other Parrot languages? Allowing you to write gluable libraries (like .Net) is one thing, but intermixing languages is just evil.
Re:Perl 6 is Esperanto (Score:2)
Re:Enough with the flames already (Score:3, Informative)
I use Perl a lot, and despite the near-vertical learning cu
Re:Enough with the flames already (Score:2)
Now I'm trying to learn french, witch is a nightmare, all the verb conjugation (I never liked those in portuguese), and words with accents, and in french they can have more then one (portuguese just have one or none).
Why expect anything else? (Score:5, Insightful)
Larry Wall is clearly a genious, and actually has a huge range of interests aside from software. One year, he talked about chemistry. The last time I was at the Open Source conference, he talked about music (and demonstrated his abilities in playing about 30 different instruments). I can still remember the puzzled look on many people's faces and some even getting up and leaving. So this year, the theme is jokes ...
For the harcore Perl person, I guess the key is to look carefully for anything related to the future of the language in between all the silliness. Maybe he's trying to tell everyone there are a great many things to life outside programming. More likely he's just got a twisted sense of humor. I found the best thing to do was to kick back and enjoy it for the entertainment value - a relatively tough concept when you're not seeing it in person and only looking at a printout though :-(
Re:Why expect anything else? (Score:2)
Larry is a master or oratory and I always learn a thing or two from reading his speeches, though hearing them is nice as well.
Re:Why expect anything else? (Score:2)
Painted Pony? (Score:2)
Hey, Larry... (Score:3, Funny)
Who else noticed... (Score:2, Interesting)
Know why? They're probably using HTML::Mason to script pages that should have been flat HTML. Instead, the cutesy query string for each page gets processed for every request.
And, golly, why break the talk up into 11 "pages" in the first place? For better advertising for O'Reilly, perhaps? Or do the webmasters think that we can't handle a long vertical scroll bar? Give it to me straight up!
Before you think this is a pure troll, I love Perl and I think
Re:Who else noticed... (Score:3, Informative)
Well, you could always click on the link to the single page printable version [perl.com].
Larry funny? (Score:3, Insightful)
Perhaps his prior "State of the Onion"s are better... can't say I've read them.
I don't know Mr. Wall, but from the way others gush about him, I suspect he is an interesting fellow, and I certainly love Perl... but his humor doesn't appear to be his strong point. :(
His talk really could have been only 10 seconds:
o The movers of the world tend to be the unreasonable.
o Deconstructionism is about understanding and breaking down "oppressive" memes.
o Postmodernism is about using a common word to mean its opposite.
o Perl5 is done, a new Perl 5 based on Parrot will be called Ponie and will be the transition step to Perl 6, which will also be based on Parrot. (Which everyone who cares about Perl already knew anyway.)
If this a typical "State of the Onion", I hope the organizers cut him down to those ten seconds sooner, rather than later...
The State of the... (Score:4, Informative)
...Onion was good, but to hear it you had to sit through five other "State of" speeches which were terminally boring. (Well, the "State of the Snake" wasn't boring, but its schizotypic references to the "Pythonic way" of doing things went a long way toward explaining why the Python community is so paranoid.)
A hidden gem [rubyist.net] appeared later in the week when Yukihiro "Matz" Matsumoto gave his "State of the Corundum" speech. (Actually it wasn't called that. It was called "The Power and Philosophy of Ruby.") The subtitle alone ("how to create babel-17") had the packed room buzzing before he started: "He's going to turn us into uber-assassins with no sense of self!"
The slides are available online (link above) and are definitely worth taking a look at. He's kinda sensitive about his English, so don't flame him unless your Japanese is better. Matz's philosophy is also guided by this maxim: "Be humble, be minor, be happy."
Flame His Content (Score:2)
I grew up in BC, so I have no problem with Engrish. Instead I'd like to take a moment to flame his content:
Flame(Flame His Content) (Score:2)
-Have you learned a non-phonetic alphabet before? Personally, I have great trouble reading only "hiragana." Kanji (chinese characters) set the flow of the sentence and helps the reader find the important ideas easily. I believe that once mastered, non-phonetic alphabets allow for faster and more accurate transfer of information. Since language is such an important tool throughout an individu
Flame^3 (Score:3)
Have you learned a non-phonetic alphabet before?
I've learned enough to know how difficult it would be to be fluent. Why do they teach Chinese children pinyin? Why do the Japanese use hiragana, katakana, and romaji if kanji is so superior?
I believe that once mastered, non-phonetic alphabets allow for faster and more accurate transfer of information.
Faster, I might give you, but given the redundancy, interoperability, and modularity in phonetic alphabets I think that accuracy is not on your side. E
Impossible Object Oriented (Score:5, Interesting)
Maybe I'm reading this wrong, but in all those pink tennis court diagrams was the concept of Parrot as a universal interpreter for Perl 5, Perl 6 & a heap pile of other languages. While it's an interesting concept in & of itself, it suggests to me that the advent of Perl 6 will not mean the demise of Perl 5, which is something I find quite comforting. And then Wall takes the "impossible object" widget, turns it into a comb & uses that to illustrate Parrot. Whoa!
This was the most fun read I've had in a while.
.Net competitor? (Score:3, Insightful)
I found it interesting that Larry didn't mention how this is positioned (philosophically, or technically) in relation to .Net which is offering a similar sort of framework.
I guess one big difference here will be that you probably wont have to compile your programs, even down to byte-code - it will just do it on the fly. (At least it seems that it will be that way, given the current nature of perl)
What could be cool though would be being able to call code from python, perl, php, java, and whatever from within your app (which could be in any of these languages too). But I guess that is just the whole .Net buzz anyway - Theoretically at least.
Re:.Net competitor? (Score:2)
You will have three options with Parrot as far as I understand it. You can run straight against the Parrot Runtime Engine (which is the same as compiling to byte code and immediately running it), you can compile to Parrot byte code, or you can compile it all the way to an executeable.
This does mean that right away, you will be able to use other language libraries in whatever language you decide to code in.
The cool thing about t
I like Perl (Score:4, Interesting)
Perl remembers that you still have to use functions to cause things to happen. According to your fancy object-oriented stuff -- Java, Ruby and the like -- the recipe for making beans on toast goes like this; At least Perl remembers that you still have to execute functions. A saucepan on a stove is a function: you put something into it, it gets changed in some way {in this case it gets hotter}, and you take something out of it. Now, beans do have a measurable temperature, but to me at least it doesn't make any sense to imagine sliding the thermometer to cause the temperature of the beans to change. I expect to have to call a function to cause the beans to get hot.
Speaking of functions, I do love the way you call functions in Perl; you don't need to know or care in advance how many arguments your function is going to need, nor what to call them, because they just come through as one array which is always called @_. Oh, and Perl {and this definitely influenced PHP} indicates variable types with a prefix, so even within speech marks, it can spot a variable and insert the value.
PHP is a bit easier for creating web pages. It automates some of the things Perl makes you do for yourself {like grabbing form variables and function parameters} and you don't have to remember to send a MIME type, but comparing PHP to Perl is like comparing DJ's record decks to a Dansette autochanger. A DJ needs a level of control over the record playing process that automation would take away. Someone who just wants to listen to a stack of records from beginning to end and doesn't mind waiting a little while between songs doesn't need that level of control.
Another "feature" of Perl is that it's possible to write a piece of code you completely understand one day, and it to be so perfect, crystal-clear and obvious that commenting would spoil it; yet a mere 24 hours later, that same code whose beauty you appreciated and with which you Became One, has turned to gibberish.
Re:I like Perl (Score:3, Informative)
Pick HTML::Mason [masonhq.com] for doing this and much more with mod_perl and apache [apache.org]
Re:You Like Drugs (Score:2)
All I think your complaint boils down to is that people should set up inheritance properly, so that rather than setting bean.temp one should call saucepan.heat(Food bean) or similar. It's a question of design rather than language I reckon.
As for the question of type, I think there are situations where one approach is better than the other and vice versa. Again, it's a question of design. Do you want to fix the type as an int at the outset for reli
To summarise the summary... (Score:5, Interesting)
It's A Beautiful Mind all over again. Perl 6 is the Riemann Hypothesis. Larry Wall is John Nash, except there may never be a Nobel prize for scripting languages. It's going to kill him or drive him mad. Forget about killing Microsoft, how do we keep Larry alive and sane?
Parrot - yet another virtual machine strategy (Score:3, Interesting)
It's interesting that these virtual machines exist primarily for strategic reasons. Each group wants to control their run-time platform. So they have to insert an interpretive layer between their language and the operating system. Why? Because the operating system is usually from Microsoft, and Microsoft keeps changing their API to lock people into Microsoft products.
It's worth noting that taking this route implies a battle with Microsoft. They hate it when someone puts a portable platform on top of their OS. Look what they did to Java, Netscape, Borland... This decision puts Perl on a collision course with Microsoft.
Re:seriously (Score:2, Interesting)
Re:seriously (Score:3, Insightful)
Re:seriously (Score:5, Insightful)
Maybe because the goals evolve has the language evolves..
Re:seriously (Score:5, Insightful)
Languages evolve, and that's all there is to it. Should development of C, C++, PHP, Python, Ruby, etc. be stopped because they have acheived their initial goals?
No, of course not. Let them evolve, as they all have done and continue to do.
Sharks Haven't Evolved Much Lately (Score:2)
Sharks and some other life forms haven't evolved* much in the last little while (although I assume with the presence of humans as predators, they are now). This is because they fit their niche perfectly. Most of the languages you mention, either do not fit their niche perfectly (as in the case of C++), have a rapidly changing niche (PHP), or don't really have a niche at all (Python). C, on the other hand, is nearly perfect for its purposes.
If you look at a list of the C99 features [gnu.org], they are either minor s
Re:Sharks Haven't Evolved Much Lately (Score:2)
I'll answer that for you: none, or several, depending on how you look at it.
Why do you keep trolling on this story? Do you have nothing better to do? Stop being such a prick; if you're not interested in Perl 6... then why are you paying attention. Really, please, STFU.
I Have Nothing Better To Do (Score:2)
I am interested in language design and once did a fair amount of programming in Perl. So although I don't like it right now, I am interested in where it's going (and frankly, right now I'm having trouble figuring that out). Part of that interest is expressed as what I believe are valid criticisms (such as the parent) which I'd like Perl advocates to respond to. And some [slashdot.org] of it is an attempt to be funny -- I'm sorry if my attempts were so bad as to offend you, perhaps you should moderate them appropriately?
Re:I Have Nothing Better To Do (Score:2)
restrict is Questionable (Score:2)
Restrict seems like a questionable attempt to graft bits of an effect system onto C's already tenuous type system. I'm not convinced that it's a great idea, but to tell you the truth, I haven't looked into it enough to be sure. Some people have, though [lysator.liu.se].
But yeah, you're right: if it works it certainly is a significant development.
Re:seriously (Score:4, Insightful)
Maybe he likes developing Perl.
Perl ~~ Masturbation (Score:2)
(Yes, that's the smart-match operator from Perl 6.)
It's about time someone made it explicit: the reason that Perl 5 is not being retired is because Perl 6 is just something for the developers to do. It's going to be too essoteric to be useful for anything that LISP isn't used for already. So if you're actually working for a living, don't waste your time reading about Perl 6, go contribute to the Perl 5 codebase instead: it's too important to be abandoned while the lead developers go jerk off.
Re:Brilliant (Score:2)
What, better than making geek jokes? Are you mad? Perl-ease! ;-)
J.
Two real pages for what Perl 6 is really about (Score:2, Informative)
Try here [parrotcode.org] or here [perl.org].
Just trust that there are many talented people working on Perl 6.