Larry Wall on Perl 6 265
Nate writes "Linux Format magazine has an interview with Larry Wall, the eccentric linguist and coder behind Perl. Larry discusses some of the new Perl 6 features ready to rock the world, and if you're not planning to move from Perl 5.8, he has a few musings on that too."
Hard Enough to Understand (Score:5, Interesting)
Parrot more interesting than Perl 6 (Score:5, Interesting)
Re:Perl? Are you kidding me? (Score:3, Interesting)
Re:Why I like Larry Wall. (Score:4, Interesting)
Re:Wow (Score:5, Interesting)
I don't know about nationally, but there was a major recession in the NY area after 9/11 for a good year and a half. I was stuck workign at burger king at one point. Granted, I choose the worse time to drop out of college, it was even hard for a high school graduate with some college and a solid skillset at the time for entry level IT work to get a minimum wage service job.
The company I work for now is an ISP/developmenthouse. They are based out in eastern longisland 36.9 miles from my house in Queens according to google. There business core was out east. They had inroads and a solid plan to break into Manhattan, but they were, and still are a longisland company. Before september 11th they were looking at adding phone lines. Afterwards, the phones stopped ringing. There development work almost stopped. They had to lay off several people.
Anyway, claiming September 11th had a negative aspect on the business of computer book publishing is far from unbased.
Better critics (Score:3, Interesting)
At least we'd get an interesting cross-flame session!
Re:Grammatical mutability... (Score:2, Interesting)
I love perl and I love perl modules, but debugging code written using perl modules makes me want to tear out my already thinning hair. I was going to write a "quick and dirty" script using the libwwwperl module but ended up going with some cURL calls in a shell instead. It was easier to see what the problems were and cURL did all the "heavy lifting" for me.
Perl: love it and hate it... (Score:3, Interesting)
I end up using all of those languages of course, because all of them have their strengths and weaknesses. Perl is not the best performer, but much of my work is working ad hoc problems and Perl is very simple and concise for many common problems. It also is a great alternative to shell programming. I love it for those things.
However, I hate writing web-based stuff in Perl because the ease of use and clarity (basically speed of me getting somethign done tempered by the chance that I can figure out what I did later when I need to) are not as high as, say, when using PHP. It pains me to see awfully written Perl code when thigns could more clearly and easily be solved using something else -- in which case I hate it. I frequently get legacy stuff that is over engineered or fanatastically complicated because someone didn't recognize or didn't know how to use something that would have been simpler; doubly an issue since this also tends to produce more opportunities for bugs.
I could go on, but I've been doing this for some time now and have a very good feel for which language is the best tool for a specific aspect of my job and I use that (because the language used to implement a solution is NEVER a concern for those whom I'm providing solutions to).
I'm really interested in Perl6 -- the new VM (looks like
Re:Why I like Larry Wall. (Score:4, Interesting)
And on the same vein, "There is more than one way to do it".
I love Perl.
Is it pretty? Not really.
Does it do OO? Pretty much, but its not pretty.
Can it go from a one liner to a pretty large app? Yup.
Is it portable and extensible. Hell yeah.
Is it fast? Fast enough. -- I remember on older machines you would run a perl script, and you could "feel" it compile itself by a slight lag before input or output, but I only notice a lag on machines that have not used that perl app yet (not cached) and uses tons of modules or whatever that need to be found on the disk. Once the program has been run, it starts as fast as any other. The runtime speed is anywhere between much slower to 4x slower than C or C++, but being that it usually takes 10x time to write C or C++ that Perl can do better, I'll go by the maxim of optimize later if needed.
I've not looked into Perl 6. 5 is fine with me. 6 embeds 5, so there is supposed to be no or very little backwards compatibility issues. 4 was not that good compared to 5, and the compatibility was not as good. Yuck, those people who still do &subroutine(); Thankfully, I don't see module'subroutine() syntax any more if it is still even supported (I think I remember the syntax correctly).
Perl is very powerful. Not the right tool for every job, but many of them. For most everything you want to do, there is a module that can be easily and portably installed (or 2 or 3) that can reduce the "reinventing the wheel" issue. The CPAN module and module dependancy can not be as fun as apt-get install CGI.pm, but perl is excellent and I hope it does not become an "old school" language. Its simply too easy to start to use, and go from there.
how will extensions work? (Score:3, Interesting)
In my opinion, Parrot needs to get this right to be useful.
Re:Real hackers use Python. (Score:4, Interesting)
Hold on... it gets to page 149 before pointing out the most important thing to be aware of in the language's syntax? That's a terrible book. Get another one.
Seriously, though, I was put off Python for a long time for the same reason. I've used whitespace-significant languages before (COBOL, and a functional language called Miranda) and had no end of trouble with indentation issues. But when I tried Python, it just worked, flawlessly. I've never had an issue because of indentation. The language works, it's easy to write, and programs are easier to read due to the lack of excess symbols. The syntax is very clean and readable.
Re:Why I like Larry Wall. (Score:3, Interesting)
I knew somebody would start bitching about the indentation. The indentation is just Python's syntax for denoting block structure. It doesn't remove any power from the programmer, it is just a different syntax. Does Perl (5, anyway) grant the freedom to denote blocks with indents instead of curly braces? No? So does that aspect make it less expressive than python? No, it is just a different syntax.
Perhaps I worded that wrong. What I meant and should have said was: A clean, simple syntax (or as you deemed it, paternalistic") does not imply lack of power or expressiveness. See Lisp for example, which has less syntax than perl or python.
But anyway, getting down to specifics, I'm not sure about your perl prototypes example. Prototypes in perl have a few different effects: some degree of compile-time type checking, ability to imply pass-by-reference (irrelelvant in python since, like Java, almost everything is a reference anyway) and making paren-less function calls even less clear.
Re:Why I like Larry Wall. (Score:2, Interesting)
Hm, I didn't type my full thought.
If you're a good programmer already and you learn the language, you can maintain the code. Then it doesn't matter if you could read the program before you knew the language. You know the language.
If you don't know how to program, you have no business maintaining the program before you learn to code. It doesn't matter if you think you can read the program.
If you're a good programmer and you suddenly have to maintain a program written in a language you don't know, the learnability of the language is important... but you're still in trouble.
In one job, I had to fix a website for a client developed in ASP with VBScript. I don't know VBScript, but it was close enough to other languages I knew so that I could stumble through a book and figure out just enough to fix things. It wasn't a brilliant solution and it probably wasn't even the optimal solution, but it worked. Still, it was a bad situation.
I think it was only VBScript's similarity to other languages I'd used (and my familiarity with web programming at that point) that made it possible to fix the bugs. If it had been another language designed for human readability (COBOL, for a totally unfair example, or AppleScript), I'm not sure the readability of the language would have helped at all.
Fortunately, the client only needed that little bugfix and I didn't have to learn VBScript and ASP to keep supporting them. Sure, my rule about not maintaining code in a language you don't know is an ideal rule and you can't always avoid it, but if people stuck with it we might be in a lot less trouble code-wise.