Tuesday, March 25, 2008
Perl 6 Is Not Just a Language
Perl 6 is a programming language I've discussed before.
Like anyone else who spent more than five minutes on the Perl 6 IRC channel, I got a commit bit to Pugs, but Pugs isn't really moving. Perl 6 has some traction on other fronts: Rakudo is moving along at a good clip, Parrot keeps getting cooler, and Perl 5 keeps getting more Perl 6 syntax built in. There are variants of Perl 6 syntax, too: KindaPerl, NotQuitePerl, etc.
Now, I'm not part of the Perl 6 design team, and I don't speak for anyone but myself. But Perl 6 is still a long ways off. I mean a real Perl 6 with mutable grammar and meaningful interoperability with other Perls and maybe other languages as well, along with all the pretty new syntax that could probably be "done" a lot sooner if it weren't so tied up in other aspects of the implementation.
By "a long ways off" I mean "more than five years."
I don't say this to denigrate the efforts that are bringing us pieces of Perl 6 right now. I say this in the interest of recognizing how big a change Perl 6 is likely to be. Especially if it keeps the interesting bits that Larry Wall seems pretty likely to keep. It's a whole culture. And it has to be rewritten from scratch. And we're just starting.
Perl 6 is not just a language.
It's a new programming culture that recognizes programmers for the language designers we are, and gives us the tools we need to do it well. A presumption that we will write code which looks at itself and adapts. A recognition that most the good ideas will be someone else's, and we should have easy ways to use them.
These kinds of changes won't come easy, especially since they'll break so many of our existing tools. Syntax highlighters and IDEs and testing frameworks will all need to be rethought, along with who knows what else. Best practices will need to be borrowed from communities that have dealt with some of the same problems, and new practices will need to be invented for dealing with new problems. We'll have to gradually move in that direction, discovering obstacles along the way, and hopefully not forgetting to enjoy ourselves.
Yeah, Perl 6 is still a ways off. But getting there is still fun. And once we've gotten there it will be worth it.
Since we'll be able to use Perl 6 to write Perl 7.
Like anyone else who spent more than five minutes on the Perl 6 IRC channel, I got a commit bit to Pugs, but Pugs isn't really moving. Perl 6 has some traction on other fronts: Rakudo is moving along at a good clip, Parrot keeps getting cooler, and Perl 5 keeps getting more Perl 6 syntax built in. There are variants of Perl 6 syntax, too: KindaPerl, NotQuitePerl, etc.
Now, I'm not part of the Perl 6 design team, and I don't speak for anyone but myself. But Perl 6 is still a long ways off. I mean a real Perl 6 with mutable grammar and meaningful interoperability with other Perls and maybe other languages as well, along with all the pretty new syntax that could probably be "done" a lot sooner if it weren't so tied up in other aspects of the implementation.
By "a long ways off" I mean "more than five years."
I don't say this to denigrate the efforts that are bringing us pieces of Perl 6 right now. I say this in the interest of recognizing how big a change Perl 6 is likely to be. Especially if it keeps the interesting bits that Larry Wall seems pretty likely to keep. It's a whole culture. And it has to be rewritten from scratch. And we're just starting.
Perl 6 is not just a language.
It's a new programming culture that recognizes programmers for the language designers we are, and gives us the tools we need to do it well. A presumption that we will write code which looks at itself and adapts. A recognition that most the good ideas will be someone else's, and we should have easy ways to use them.
These kinds of changes won't come easy, especially since they'll break so many of our existing tools. Syntax highlighters and IDEs and testing frameworks will all need to be rethought, along with who knows what else. Best practices will need to be borrowed from communities that have dealt with some of the same problems, and new practices will need to be invented for dealing with new problems. We'll have to gradually move in that direction, discovering obstacles along the way, and hopefully not forgetting to enjoy ourselves.
Yeah, Perl 6 is still a ways off. But getting there is still fun. And once we've gotten there it will be worth it.
Since we'll be able to use Perl 6 to write Perl 7.
Labels: culture, perl, perl6, programming
Tuesday, March 11, 2008
The Pleasure of Sucking
Earlier today, a coworker asked me if I thought some people were just destined for mediocrity- to be one of the crowd. Average. Well, my answer is yes. The vast majority of people suck at the vast majority of things.
Who cares?
I love to bumble along. I bite off more than I can chew, then chew for a while anyway, then maybe keep on chewing, or maybe spit it all out and try something else. I like to dive right in and go with the flow, even though I don't know what I'm doing. I like, in a word, to suck.
For most things, I couldn't possibly be great at what I'm doing. After all, I have had neither the time nor the inclination to become an accomplished professional. And that assumes I have the raw talent, if you believe in that, which I don't.
Take the piano- I quite happily suck at the piano. Same thing with the harmonica, concertina, guitar, tuba, and trombone. I can barely read any music, I'm not creative in the way that some people are where they can come up with something on the fly, and I can't play by ear.
I suck.
And I love it. Sometimes I'll play the piano for ten whole minutes, and suck the entire time. Worst part is, I have little desire to play any better than I do. I don't know why. It's supposed to bother me that I suck, and I'm supposed to want to be better, but instead, I play badly with great fervor and gusto. I even play publicly sometimes.
I can write code in fifteen different programming languages, and I totally suck at all of them save one, and I kind of suck at that one. But it's so much fun that I just can't stop learning new ones to suck at. Some of them are even designed explicitly to be sucked-at. Wow!
The list of things I happily suck at is too long for a blog post, but I'll make a half-assed list here anyhow, in the spirit of sucking:
Now, as I thought more about my coworker's question, I wondered if sucking at a whole lot of different things might not be a fairly good way to eventually discover something I don't suck at. But I don't really care. For most things in life, not-sucking is highly overrated.
Who cares?
I love to bumble along. I bite off more than I can chew, then chew for a while anyway, then maybe keep on chewing, or maybe spit it all out and try something else. I like to dive right in and go with the flow, even though I don't know what I'm doing. I like, in a word, to suck.
For most things, I couldn't possibly be great at what I'm doing. After all, I have had neither the time nor the inclination to become an accomplished professional. And that assumes I have the raw talent, if you believe in that, which I don't.
Take the piano- I quite happily suck at the piano. Same thing with the harmonica, concertina, guitar, tuba, and trombone. I can barely read any music, I'm not creative in the way that some people are where they can come up with something on the fly, and I can't play by ear.
I suck.
And I love it. Sometimes I'll play the piano for ten whole minutes, and suck the entire time. Worst part is, I have little desire to play any better than I do. I don't know why. It's supposed to bother me that I suck, and I'm supposed to want to be better, but instead, I play badly with great fervor and gusto. I even play publicly sometimes.
I can write code in fifteen different programming languages, and I totally suck at all of them save one, and I kind of suck at that one. But it's so much fun that I just can't stop learning new ones to suck at. Some of them are even designed explicitly to be sucked-at. Wow!
The list of things I happily suck at is too long for a blog post, but I'll make a half-assed list here anyhow, in the spirit of sucking:
- sharing
- gardening
- swimming
- electrical engineering
- woodwork
- driving
- calligraphy
- writing a book
- building robots
- starting fires
- finishing anything
- cooking
- home repair
Now, as I thought more about my coworker's question, I wondered if sucking at a whole lot of different things might not be a fairly good way to eventually discover something I don't suck at. But I don't really care. For most things in life, not-sucking is highly overrated.
Subscribe to Posts [Atom]