Ask Larry Wall
About what? Perl is probably a good topic choice. No one knows more about Perl than Larry Wall, right? We'll send 10 of the highest-moderated questions to Larry by email, and post his answers when we get them back. Note: Due to Slashdot's line length restrictions, lines of code over 50 characters long may not display correctly. Please be aware of this if you include code samples in your question.
Heidi Wall is so hot
Je t'aime Stéphanie
...Until threads in Perl take advantage of multiple-processors?
Why don't you use Python instead?
If you were to have a second chance at designing Perl, what would you have done differently?
It's clear that Perl is undergoing a huge revision now, but even in the midst of this, you have to refrain from straying too far from the existing userbase. What would you do if you didn't have to satisfy those people?
I have been pwned because my
pronoblem
No, this is not a Troll! It seems to me that Perl is as much about expressiveness as it is about creating software.
What do you think about the argument that Perl is a good language for small/medium sized websites and Java/J2EE is what should be used for large enterprise websites??
We all know perl was born because you couldnt get something to work right using awk. I'm curious - what could awk not do that implored your self-proclaimed laziness to go off and design Perl?
The One Rule Of Chess You'll Ever Need: Don't play someone who carries a kit in their bookbag.
I've been using perl for a very long time, but primarily as a scripting language. I indeed mostly use it for extraction and reporting. With the recent developments in perl, however, there seems to be the trend that perl is able to do much, much more (while retaining compatibility to be "just" a scripting language).
What do you think about how people are using Perl today? Are you satisfied that most people use it for simple tasks like log parsing? Would you like to see more advanced applications being built with Perl verses a compiled language?
Moderation: Put your hand inside the puppet head!
of an unladen swallow?
Could you have designed a language that was more obfuscated and harder to read/write then perl? And could you possibly have made it more difficult to install on the system then it currently is.
--Jaded distribution maintainer
Every project has its own raison d'etre. I wouldn't expect Perl to be any different. Could you tell us a little about what problems you were trying to solve when you began work on Perl? Also, what were some of the big hurdles you had to clear along the way?
My office has been taken over by iPod people.
What language do you use when you're not using Perl?
PDHoss
======================================
Writers get in shape by pumping irony.
If given the chance, what 10 questions would you ask yourself?
42
Please! Most of Larry's programs would never THINK of being 50 lines.
If he wrote a perl script that was 50 lines long, we could replace DirectX!
Check out my sysadmin blog!
Thanks for Perl and the excellent Camel Book. I've been using Perl for 7 years now and am very grateful for having such a tool at my disposal.
Now for the question. Many times people ask the question "Does open source software pay?", and I am under the assumption that it has for you with the profits from the Camel Book and the Perl Resource Kit, etc. So has OSS been profitable for you?
PS, I miss the Hmm..... and other funny comments while applying patches :)
Due to Slashdot's line length restrictions, lines of code over 50 characters long may not display correctly.
Isn't this something that can be fixed in Perl?
MjM
I only mod up...
XKCD:Xeric Knowledge Comically Dispen
I'm a CS student who's recently become very interested in Perl along with other languages. However, I don't really have too much everyday (or even occasional) need to actually USE much Perl. I am big into learning as much as I can about it for its own sake.
:)
Now, for the question: Given this approach to learning Perl (just for a general working knowledge, maybe light usage,) is it really worth spending a lot of my time learning Perl now, or should I wait for the big Perl 6 revision?
Thanks
Sharpies don't just sniff themselves.
Do you have any suggestions for improving SLASH?
Do you even lift?
These aren't the 'roids you're looking for.
Do you think that Perl the fact that Perl is so easy to learn and alows a lot of "Baby Talk" is a disavantage in the workplace were it makes a good programmer indistinguishable from a amateur wannabe. Compare that to Java where even if you just want to print "Hello World" you have to understand inheritance, polymorphism and static class methods. Would a Perl certification help give managers that fuzzy feeling of security?
Je t'aime Stéphanie
What do you feel about the future of Perl? Where is it moving to, and what still has to be done? .NET and XML? Do you see them as being possibly sucessful in light of Perl's flexiblity? There are so many languages and standards out there, it's hard to see what will some to the top.
Do you see Perl moving towards ever being a greater language for "programming" as C++ is? Or is it's place pretty well defined and not moving?
In addition, what do you think about other languages and systems such as the
Tibbon
tibbon.com
Thus I worry that perl has Python-envy. I've tried to use python several times but always go back to perl. The reason is my daily need for a parser dominates my choice of language and maintains my fluency, since I dont want to have to be fluent in both, perl becomes my language of choice for advanced tasks too, even though python might be better for strcutrued programming.
So my question is, is perl 6 making make perl a structued language like python? Would it be a good idea if perl did not develop any further for fear of becoming too complicated and thus disorganized. (witness the evolution of java from clean slate to giant mess with intricate redundant libraries half of which are deprecated).
How many average sized ducks can fit into a two car garage. I need to know quick.
Larry Wall has to be one of the geekiest nerds there have ever been.....
He's cool.
Jonahweb.com has stuff.
Larry, Perl has been accused of not being object-oriented because it only supports one of The Three Pillars(encapsulation, the other two being inheritance and polymorphism) of Object-Oriented programming.
In my experience having the programming language handle the complexities of the object type is just as good as having explicit types like int, float, string, etc. But others disagree. And, I'm sure that by creating packages that call other packages, inheritance can be simulated. Others would disagree with this as well.
Additionally, the people who criticize Perl's object-orientedness claim that Object-Oriented programming is "bolted on" to Perl, and therefore is somehow unnatural compared to a language like Java which is built to be object-oriented from the ground up.
How would you answer these critics, and how well does Perl in fact support Object-Oriented Programming, in your opinion?
No, Thursday's out. How about never - is never good for you?
Which language do you prefere between Python and Ruby?
Why would you pick Perl over other web (or even shell) scripting languages like PHP, ASP or any of the others?
There are only 10 kinds of people in this world... those who understand binary and those who don't
What's your favorite Perl poem?
Cheers,
b&
P.S. Thanks for creating something as wonderful as Perl! b&
All but God can prove this sentence true.
With the exception of perhaps the Lisp fanatics, the Perl fanatics are some of the most impatient and rude newsgroup posters.
You don't post to CLPM so often, but can we assume you read it? What is your feeling when you see another newbie get toasted because he dared to spell PERL in all caps or wonder about a CGI problem?
I have been pwned because my
Mr. Wall,
I know that you are an amateur linguist, since you originally wanted to be a missionary, and I was just wondering what other languages that you know and how they influenced your design of perl. I believe that you mentioned in the Camel that Greek was one of the languages that you drew from, and I was just wondering about the others you used, and why you chose them.
Thanks!
I'm a student who is just starting out with Perl. What do you think is the best Perl GUI toolkit? The main things I am interested in are portability and ease of use. Thanks!
Larry,
One of the small negative aspects of perl is the difficulty in reading someone else's code.
Are there any plans to slowly make perl into a more readable language (Python for example)?
So Larry, it's pretty clear to me and all my collegues that Ruby and PHP are gradually taking over everything that is currently written in Perl. What are your thoughts on the inevitable short lifespan Perl now has?
These are serious issues Larry. Just the other day I saw an IBM job listing for "Perl/Ruby Programmer needed."
I use and Love perl for a myriad of tasks... from website scripting to core business app frontends to SQL databases to embedded system programming.
I absolutely love perl based on the fact that you HAVE to give out the source... It's just works that way...
what is your opinion on these up an coming perl compilers? do you feel it's onyl about obfuscating and trying to lock down a perl program jsut to make a buck or try and avoid being Open Source? what are your feelings about peopl's efforts to try and make a perl program closed source this way?
Do not look at laser with remaining good eye.
How do you think Perl compares to languages such as Ruby, Python, or Lua? Where do you think Perl has its strengths, when these other languages are accounted for?
Larry, I am a perl user for quite sometime now, infact in many organizations like us perl is the defacto language for scripting. And I feel Perl has reached a pinnacle. Perl as such will be difficult to improve. Of course better regex and such minor issues can be fixed, but for all that matters I waould call it perfect, so do you plan to branch into something completly differnt, yet on the same philosophy. Perhaps perl with more intution, more power, an altogether differnt language with the same underlying philosophy of perl?
My Aurora : http://www.youtube.com/watch?v=o91ZsGwJYyg
FB : https://www.facebook.com/TanveersPhotography
of making your daughter? She's stunning. Can I date her? I went to New Life Church too, but it was in DC.
There are two types of people; those who divide people into two types of people, and those who don't.
She's the one on the right.
--
pants ahoy
What would you say has been the number one requested feature that you will not put into Perl 6, and why not?
What are your thoughts on these other scripting languages? What do you like about them, what do you dislike?
Do you even lift?
These aren't the 'roids you're looking for.
Given that the apocalypses are running several months apart each and that the Camel book has 33 chapters are you comfortable with the pace being set for the Perl 6 specification?
In the Camel Book, you mention Tolkien's Lord of the Rings as good background reading for Perl.
Do you think the Peter Jackson movies are an acceptable alternative? Or do I have to read the books?
The opposite of progress is congress
At the college level, the programming classes are taught using C,C++,Java, etc. Do you see a place for perl being taught in the classroom? I find that it is often overlooked and dismissed as simply a scripting language.
Don't pet the burning dog
I grew up with grep, sed, and awk. I'm a firm beleiver that I can do anything I ever need to do with them, but people always espouse the superiority of perl. What can perl do to large files, in terms of beating the bejesus out of text, that makes it so much better?
Just to set the record straight, I use whatever language that I think will be the best tool for the job.
Larry, my question to you is why should I use PERL over Python for system administration? Why should I use PERL over PHP for web content? What do you think that PERL is best suited for?
-either- :)
What are your favorite things that have Perl or Pearl in them, either literally or figuratively? e.g. Pearl jam, Oysters, etc...? Please don't say Slashdot
-or-
Did your naming of Perl have anything to do with a linguistic memory of someone dear to you who used the word pearl in sentences such as "oh... he/she is a real pearl (of a person)"
Conversion Rate Optimisation French / English consultant
For each (@WierdSyntax) {
$Reason = $_
print $Reason
}
What is your opinion of .NET in general and Perl's role in it? Given that .NET supports Perl as one of the languages would you recommend actually using it for any projects? Do you see good future for this tandem?
Larry,
One of the limitations that I have found on Perl is
its lack of modern concurrent processing support in
the form of a standard stable threads package (yes, there is ithreads) or some way to make Perl modules execute and comunicate remotely (nope, rsh* won't do, neither is SOAP the solution)
More and more other languages are providing mechanisms or libraries of modules that are standard in their distribututions.
I would like to know what kind of ideas you would have in this area. Do you think that Perl needs to
have this capability as a standard component?
Thanks for all the fun!
Microsoft advertising all over the place. They even seem to have crept into the osdn advertisements on slashdot. I captured a screenshot here.
See if this is believable
Mr. Wall,
Your campaign seems to have the momentum of a freight train. Why are you so popular?
Finally, math books without any of that base 6 crap in them.
WARNING: a Christian topic follows. Close your eyes and stop your ears if that bothers you.
I hear that Mr. Wall once wanted to be a missionary translator but that a chronic health problem prevented him from going someplace foreign. I further hear that missionary translators use Perl a lot.
Has he heard any cool stories about how missionaries use Perl?
Would he ever want to do a short-term missionary gig?
How is his health nowadays?
Having read some of the more recent Apocalypses, I have a question for you: are you crazy? The regexp changes you're talking about in Apocalypse 5 will make Perl 6 deeply incompatible with existing scripts and practice. In particular, I object to the conversion of [] to non-capturing grouping rather than character class. As a long-time user of Perl, I have to say this is insane. You're wrong when you say "we're really simplifying" -- you're making things more complex. Changing this breaks Perl and much more; why do you think you're immune from the negative side-effects of hubris? And it is hubris. We know this because you start page 2 of the Apocalypse by saying, "Regex culture has gone wrong in a variety of ways...." One of Issawi's Laws of Progress says that society (even Perl regexp culture) is a mule, not a car -- if pressed too hard, it will kick an throw off its rider. Something this radical and wrong will hurt Perl 6 adoption and will retard the acceptance of some very nifty features.
Dog is my co-pilot.
What are your thoughts on the comments made by people that Perl is not designed for projects that require more than one programmer? Many people have stated over and over again that Perl code can not be managed by more than one person ... what are your thoughts on that statement? How would you manage a large Perl project? Do you think Perl should be used for large projects? (or should it be used strictly as a "quick and dirty" programming language?)
BTW: I love your work (someone had to say it)
HallmarkOrnaments.Com
well you know you invented scripting... recently I was deploying a java open source ledger tool for customers until I have a customer with an imac os x based one... i found no java 1.4.1 available on that new 'nix platform so finally as the 'old times song' I deployed perfectly a perl ledger tool on it... I don't realize the old 'nix times fashinon way until I realize was the scripting culture fastest way to customize it for my customer... long live perl ...the question: how does java transform perl into perl 6 ?
Used to write hardware diagnostics, on VME and Multibus cards in a chassis; one master card, many test cards. Master reported errors over a serial line, and over 15 years the format had gradually changed. Any 24 hour run could have a real stray dog variety of error reports. I needed to analyze the output for patterns, and tried using awk, sed, sort, etc. It was an incredible pain what with all the subtle variations from board to board. After two weeks struggling with awk, sed, sort, I tried Perl, I think Perl 4 at the time, and within a couple of days had learned enough of the language to do the entire job.
Infuriate left and right
One of the big methodologies in vogue at the moment is eXtreme Programming and closely-related Test-driven Development (where you write your tests before writing your code.)
Considering that XP is a "high-discipline, low formality" methodology, how do you think XP and Perl fit together? How would you go about doing test-driven development in Perl? Is Perl a good language for XP?
-Peter
To print "Hello World" in Java.. You don't really need to understand inheritance, polymorphism, and static class methods. You just need to know what type, not why you type it. I remember coding Java back when I was 10 (close to 5 years ago now), and I didn't understand any of that stuff. However, I was still able to write functioning programs and applets. I didn't understand the inheritance, static class methods, etc. until about four to five months after I started. I found when I was younger, the more code I read, the more I memorized. The way I learned the language then was more of a cause and effect nature rather than
understanding what the code actually said.
Mr. Wall
Are there any issues in Perl that will not be fixed in Perl6? By an "issue" I mean an aspect of the language that is being widely critized and is admittedly suboptimally implemented, like the current OO implementation.
Stop the brainwash
What application of Perl most suprised/pleased/amused you when you discovered Perl's use in that role?
...is not truly OO. If it was there would be no primitive data types. Sure, there's Integer, etc, classes, but having primitive data types in the first place excludes it from being purely OO.
If anything that is a good thing. I personally don't know PERL, choosing at the time to pursue ASP and Visual Basic (though now I code 90% in Delphi).
One of the things I don't like is having to lay down lots of code to do something so simple as screen output. Over the last year or so I have been rewriting my company's primary application, increasing the inheritance and modular coding with the purpose of future programmers only needing to scratch the surface rather then go to the base code.
Giving managers a fuzzy feeling? Give them a stuff toy, you can code shit both in PERL and JAVA and about any other language that can leave one open to exploit. The more concepts a programmer must understand and use (for basic tasks), the more likely they are to mess up.
Coding and security come both by approach and experience. The langauge is irrelevant and the certificate is to... Otherwise MSCE would really mean something.
Tournament Management Online &
Despite your major efforts at rationalization, Perl6 looks to be just as, if not more complex than Perl5 when it comes to the human readers interpretation of the meaning of the combinations of punctuation marks, brackets, etc in Perl6 source code.
Why not just be done with the concept of multi-punctuation operators and just map the each of the operators into one of the many single Unicode characters available. Imagine the money the Perl institute could make from the sale of keyboards.
How do you go about getting ideas for/stoking the creative muse for doing language design?
Perl newbies are obvious. They don't take advantage of hash keys, and generally write Perl just like they were coding in C (e.g. if/then/else to do multi-way cases, lack of good exception handling, for(;;) loops when a foreach loop is much more clear, etc.)
They also "re-invent the wheel" with everything where an obvious CPAN module application would have made life easier for everyone involved.
Larry,
I remember reading at some point that you are a
Christian, and there have been suggestions that
some of your early missionary impulses (a desire
to do good, help others) are perhaps part of the
zeal you have put into Perl over the years.
Preferring a scientific view, I am not religious,
and have no desire to be. Perhaps there is a
God, but if there is, I think he/she has no
opposable thumbs; in other words, has no power to
change anything; reality is just playing out
according to the laws of physics (whatever those
are).
Please tell us how in the world a scientific or
at least technical mind can believe in God,
and what role religion has played in your
work on Perl.
Thanks for doing this interview, and thanks
for Perl!
... with designing a programming language? Also, which comes first - the interpreter/compiler or the syntax?
Larry: What the hell is your problem?!!!
APL is perfectly suitable for writing natively obfuscated code. Why did you think it neccessary to reinvent the wheel?
What did you smoke when you invented perl?
Dyslexics have more fnu.
Please give the syntax for the perl language in a BNF -form table.
Thanks
A.C.
Are you REALLY a homosexual?
That was what I wanted to ask, actually. I was wondering if I could have a date with your daughter, Heidi.
Thanks.
Hi Larry,
Like many others, I *love* Perl. I use it both professionally and personally. You've not only helped make my career, but also given me a very pleasent past-time. I was wondering what I can do to say thank-you? Can we give you money? Dontate something to someone, etc.?
When the new Programming Perl came out, I didn't really need anymoe (viva perldoc!), but wanted to make sure I was putting a few bucks in the pockets of those who made Perl great. What else can I do to say thanks?
-Bill
SlashSig Karma: Excellent (mostly affected by moderatio
perl 1-5 have been great UNIX configuration/management languages. This includes small-scale webserver platforms. It's very difficult to find any other language that is as versitile in this respect where it reigns in it's niche. It is the perfect combination of speed, power, simplicity and huffman encoding (especially given the co-UNIX-tools look-and-feel).
Perl 6 on the other hand, changes this formula around; favoring a more general solution that potentially reduces performance (due to abstractions), and deviates substantially from the UNIX-family-syntax - Namely: c-ish-syntax ( colon, question mark, select, exception-handling, etc), awk/sedish reg-ex's, raw c-libray-wrappers, etc. It was these very similarities that made learning and accepting perl so trivial since learning CIS and UNIX administration was sufficient to master perl in 2 days.
My question is: does perl 6 have a niche in mind? Or is it spreading itself too thinly; competing more and more against Java/python/C# and thus losing it's identifiable niche?
-Michael
What is your favourite quote? (*coughsigcough*)
When in doubt, parenthesize. At the very least it will let some poor schmuck bounce on the % key in vi. (Larry Wall)
How about even more straight-forward question:
Larry, do you understand your own code written in Perl two years ago?
Less is more !
More than any other programming language, Perl has an extensive culture built up around itself. It is a language that people get quite passionate about, and it's used daily by system adminstrators, application programmers, researchers, hackers, and even poets. When you set out to develop Perl, did you envision this culture blossoming out of it? What is it about Perl that inspires such passion?
What exactly is the difference between "scripting" and "programming".
Death of Cobol predicted.
These three sodas cause colon cancer.
World to end at 9.
News at 11.
That's a trick question, because Python sucks and Perl is the greatest language ever created.
haha, go right ahead and write enterprise apps in perl..
.. hmm ..
lol
man, that made my day haha. No wonder this is an AC comment... err
give me nightly blowjobs?
I'm a perl programmer who uses it daily. The push is on from the C?O types to get rid of Perl, even though a bunch of us here know it and are very proficient and fast with it. The new standard is Java with web services and all that other BS. This sickens me, because a) I'm biased towards Perl and b) I know Java is simply a fad language and the overhead/infrastructure only serves to give do-nothing architect types jobs.
The high-level technical people in my company don't take Perl seriously. They see it as some kind of super-Awk or an artifact of the early days of the web. Smart people know better, but we're not in charge.
What do you think it would take to get people to take Perl seriously as a programming language [again]? Is widespread use of Perl a goal of yours, or do you not care?
Posting anonymously to avoid a lynching..
How do you feel about your daughter being admired by hundreds of slashdotters, including not-so-nice comments and implications?
I hear your interest in linguistics has had an influence on Perl and Perl's "there's more then one way to do it" attitude mirror's well the flexibility of the languages of the world, better then most programming languages(for better or for worse). I was wondering if you could tell us a little how Perl has been influenced by linguistics and how you wish/hope it will be?
I'm a CS student who's recently become very interested in Perl along with other languages. However, I don't really have too much everyday (or even occasional) need to actually USE much Perl. I am big into learning as much as I can about it for its own sake.
:)
Now, for the question: Given this approach to learning Perl (just for a general working knowledge, maybe light usage,) is it really worth spending a lot of my time learning Perl now, or should I wait for the big Perl 6 revision?
Thanks
Are you Weird Al Yankovic? Or one of his relatives ?
:-)
I'm serious, you look a lot like him to me... !
Larry, I have found the perl manuals to be some of the most readable computer manuals available today. (esp. the camel book) I actually enjoyed reading them. Are you planning on writing any more books?
No. In the cube farms, or anywhere, incompetent programmers are easy to spot. They make obvious mistakes, reinvent the wheel, write twice or ten times the amount of code necessary to solve a problem. But most of all, the hallmark in any language of incompetent programmers is that the programs they write clearly show the mindset "I must be a great programmer; see how complicated my code can be?" The good programmers are lazy and like simple solutions in a minimum of code. The mindset reflected in their code is "I *am* a great programmer; my code shows how simple this problem really is." I guarantee you can always tell the difference.
Hello Larry, if you would develop a complete new language, not with perl6 in mind, how would it look like? What would be the design goals? Would it be total object oriented? Thank, Hermi
I'd find it hard to beleive that someone could argue that Perl as a language has a better design than Ruby (now's your chance if you want to). If Larry Wall is any sort of visionary shouldn't he swallow his pride and switch to Ruby?
NOTE TO [STUPID] MODERATORS: This is not a troll. This is serious. Think about it.
-... ---
Yeah, who are you really?
"If you loved me, you`d all kill yourselves today"
Spider Jerusalem
Microsoft ads on /.? I think i'm going to finish loading all the MRE's into my basement and ride out the oncoming cataclysm.
>
Hmmm. So if I compile some perl using the perl compiler I guess it's no longer a script, eh?
-- Sorry, I can't think of anything funny to say here.
Polymorphism is the key to OOP. Its what makes everything reusable, and melds everything together in a program.
Most OO fans will say something like "X is the key to OOP". Yet X is always different. X has been "composition", "patterns", "inheritance", "abstraction", "reuse", "encapsulation", "modeling noun interaction", etc. etc. etc.
I would like to ask Larry what he *feels* about OOP rather than what Perl does with it. If you want to know what OOP features Perl has, then RTFM.
Please, don't waste questions on stuff that you can find by RTFM.
(oop.ismad.com)
Table-ized A.I.
Pic 2
but she looks even better in person
Accept no cheap substitutes.
Demand the genuine article!
Ahhhh, Grasshopper, if only that were true.
I have seen firsthand so-called "professional programmers" using Java to create some of the worst God-awful spagetti code I have seen in my 15+ years of . No matter what the virtues and ideaology behind any language, someone can come along and screw it up beyond recognition.
Power tools in the hands of amateurs regularly results in the loss of limbs.
-Steve
Hey, Windows users, there is no such thing as "forward" slash, there is only slash and backslash.
On this page, you talk about the natural language principles in Perl. How prominently have these these principles figured into the redesign of Perl? Were any of them "traded-off" against something else? If so what? Do you have any general comments about the linguistic aspects of Perl 6?
At that time, there was no credible competition to Perl in any of the niches it basically created. These days, there is more competition than I can comfortably list. Indeed, if I were choosing a language like Perl today, I would be very, very tempted to choose Ruby instead, and I am not the only Perl programmer who feels this way. Interestingly, Perl6 is beginning to look and feel a lot more like Ruby. Are there indeed aspects of Ruby that you were deliberately trying to have in Perl6? Are there any aspects of Ruby you are especially wary of?
Babar
... and the bullcrap flag is now going UP.
$ perl -e '{ print "Larry Wall totally rules!\n"; }'
Yes, I am an agent of Satan, but my duties are largely ceremonial.
So J2EE and Java in general is scripting? What about C++/C#/J++/VB.NET? Those are all compiled only to an intermediate language, then interpreted.
--- What
Could you please put in multi-line commenting in the next version of Perl? My # key is getting rubbed off.
OddManIn: A Game of guns and game theory.
Larry. What is the best programming language you did not desing?
Dyslexics have more fnu.
I don't know why Perl wants to be a kitchen-sink language designed to fill any programming role. It is ignoring Perl's strengths to try to do and be everything to everyone. What struck me about the parent post was that just last night I was trying to decide whether Perl would have taken off like it did if it had looked like what Perl 6 will look like. I don't think it would have.
Perl is The Clampetts of programming languages.
-B
Ash and Hickory, straight-grained and true, make excellent bludgeons, dandy for the cudgeling of vegetarians.
This interview should help to enhance the questions.
Do you know of any Perl modules that might assist Slashdot editor's from posting duplicate articles over and over again -- even within a six hour time period?
Strange women lying in ponds distributing swords is no basis for a system of government.
there are others who would say the same about java...take a look at what Paul Graham (lisp master)
has to say about java in item 2: Java's Cover, by P. Graham
I agree that you can distinguish a good Perl hack from a not so good Perl hack, but I don't think it's limited to newbies. I've seen folks who've used Perl for 3+ years continue to write unreadable page noise. They get by on experience, but the next guy who has to maintain their code would do best to sack the current code and start from scratch.
You had a cornea transplant a few years ago (Google cache). How's it doing?
Stupid job ads, weird spam, occasional insight at
Are you considering implementing Perl into the Linux kernel in the future so that low level kernel events could use Perl interpretation natively and speed up general scripting speed? Or possibly perhaps make special Perl opcodes to access compiled dynamic storage locations for variable space?
Traditionally, computer programming languages have competed against one another, but now we seem to be moving towards a world in which a programmer will be able to choose from a set of virtual machines (VM's) as well as from a set of programming languages. The Perl 6 VM (dubbed "Parrot?") can execute Java source-code (because Java source can be compiled into Perl 6 bytecode) as well as Perl source-code, and, indeed, almost any programming language can be compiled into Perl 6 bytecode. The same is roughly true of Java. Because the source-code of nearly any programming language can be compiled into Java bytecode, a JVM can execute code written in nearly any programming language provided that a compiler has been written to transform the source code into Java bytecode. Examples of such compilers include Jython (which compiles Python source-code into Java bytecode), NetRexx (which compiles Rexx into Java bytecode), and JRuby. And, of course, there is Microsoft's .Net, which, IIRC, also contemplates (or at least permits?) the compilation of nearly any source-code into a bytecode specified by MS (of course, MS wants the bytecode's execution to take place on a MS O/S exclusively). Furthermore, there's no reason (that I can think of) that would prevent, say, Java or Perl from being compiled into Python bytecode and executed by a Python VM.
There are many implications and consequences of giving software developers this degree of choice. In your opinion, what are the most significant of these consequences?
A lawyer & digital forensics examiner. Also an expert on open source software (OSS).
Larry:
Looking over your new plans for improving regexp, I would still say that there is not enough power in perl. I'm working on a problem right now where I am retro-fitting someone else's large C & F77 package with shiny new perl. And the I/O to their antiquated files is killing me. I can't find a templating tool which is flexible enough, so, I end up writing everything out by hand.
Why can't we get a nice hash-based templating tool which will accept format strings from C or fortran, regexps, variable lists, and control options? With some nice control over loops and optional includes, these named hashes could be strung together to create metaformats which could be used to generate both read and write code for any given file. I think that a lot of other complex problems can be taken on with this approach. Wouldn't this be a better, more flexible, more readable solution to improving the regexp power of perl than simply extending the match command?
I realize that I could just write a package, but, maybe I'll just have to do that now.
-J
(* What exactly is the difference between "scripting" and "programming". *)
I like to make this distinction:
1. Static typed language (ST)
2. Dynamic typed language (DT)
3. Scripting languague (SL)
ST languages check all typing at compile time, and are thus usually compiled.
DT checks typing only during run time, or has no built-in types (everything is a string or just bytes to the interpreter and numeric operations convert/check them on the fly. Thus there is a sub-distinction between those DT langs which carry internal "type" codes for variables, and those that don't). However, DT languages may target large projects and have a lot of features, and thus a longer learning curve.
SL are meant to be easy to learn and usually a "glue" language. They keep features to a minimum in order to make learning them easy (except they do tend to have a lot of string operations to help in gluing). Unlike DT, they are not meant as a "career language". The language author assumes that the programmer will be using many languages, and will not assume that their SL language will be the primary language for your shop, thus it does *not* have to carry the burden of being everything to everybody.
Perl is a DT language, but not an SL anymore.
Table-ized A.I.
Perl seems to have been accreting features at a very fast pace since Perl4, and Perl6 doesn't seem to slow that down. Is there ever going to be a significant reduction in features? Perl at this point looks so huge and daunting that I really can't recommend it to newcomers as a scripting language anymore.
A scripting language is one that you don't like.
A programming language is one that you do like.
Did you consider using a name other than Perl 6 for your new language? Many current Perl users recoil at the extreme changes made to their favorite language, even though they can still write Perl 5 for the most part. (And I really like the new regexp design.)
In retrospect do you think a new name or version nomenclature would have warmed the reception and/or reduced confusion?
Hello Larry, it would be perhaps better, to switch the portions in the perl6-project: Give "parrot" the main role and perl6 the supporting role (means: only change few things of the syntax). Perl5 programs should be compiled by parrot. This would be a winning combination and a valuable contribution to the open source community. What do you think about this?
What features did you want to get into Perl 6 that won't be there, and why were they left out? Do you think they'll be in Perl 7, or is Perl 6 the end of the line?
"Other kings said I was daft to build a castle on a swamp, but I built it all the same, just to show 'em. It sank into the swamp. So, I built a second one. That sank into the swamp. So, I built a third one. That burned down, fell over, then sank into the swamp, but the fourth one... stayed up!"
One of the features I really miss in perl is a clean way to pre-compile
scripts. Both to speedup loading times and to byte-[en]code to program.
There is perlcc, which really isn't supported as a production tool and doesn't take
modules into account.
What do you think about technologies like Zend?
Is this really a issue for perl? or just a matter of time?
While in the past the driving force inside the technology was the language (cobol, fortran, C, C++) now we're moving towards platforms and frameworks as a whole. The two contenders are, of course, .NET and Java with its J2EE, JME etc.
As complexity of information system grows, I see
PERL more and more relegated to the role of 'glue' and 'toolbox' , with the main infrastructure developed in one of those two technologies. This will happen for big sites, smaller sites will still benefit from PERL.
I also see PERL as a great testing
scripting language. This is my vision of PERL's future...what's yours ?
Larry-
:-)
My name is Brian Wall and I live in Minnesota. Any chance we're related?
There is no reasonable defense against an idiot with an agenda
:wq
Doesn't look like you need to know much about inheritance, polymorphism, and static class methods to me.
Can't even properly post code samples in slash!
(Which is written in perl, btw!)
How many average sized ducks can fit into a two car garage. I need to know quick.
The frequency of such questions is perhaps a good guage of the state of the tech economy.
Table-ized A.I.
I have a dire question and I hope that /. 50 cha$
Thank you Larry,
I won't jump off this building until I hear your answer
Live web cams
(Reality reasserts itself sooner or later.)
You program Christians?
ASP isn't a lanugage, it's a hosting environment. ASP hosts, by default, JScript (pretty close to ECMAScript, formerly known as JavaScript) and VBScript, but additionally can host JScript.Net, C#, PHP, Perlscript, Python, etc.
Hello Larry, is it true, that the idea of Perl6 was born during a meeting at O'Reilly's ?
;) ciao, Hermi
Tim O'Reilly: I want to switch completly from Windows to OS X. This will not become cheap and the edition falls
Larry: Uhm.. a powerbook would be a nice thing. How about this: I will change the syntax of perl a way, all perl-books have to be rewritten. How about that?
Tim O'Reilly: You are not only a programming genius, no, you are also a financial genius.
I've been impressed by your commitment to implementing Unicode support in Perl. It looks like you've played/worked/studied hard to get it right. Any comments about the highlights of this learning process --- the good, the bad, the culturally provocative?
Thanks.
Jon Babcock
I've been looking at the Parrot interpreter for Perl 6 and I noticed somewhere that its design is based on lots of registers instead of the usual stack-based designs (like the JVM). This design aspect should make it fairly snappy (better cache utilization, etc..) My question is this: would it be possible or useful to make special hardware that would hyper-accelerate the Parrot VM?
I been thinking lots lately about what it will be like when the computer industry moves to an entirely new platform(!) (My code name for such is OS-Y running on the Z-Box) After doing an extensive search of languages, I'm pretty sure an offshoot of Perl will be the basis for such a platform. I think it will be Perl because it so easily facilitates "Meta-Programming" which I believe will be central to this new platform.
What do you think?
Which of your projects do you think, after all this time, is more useful? Perl, or patch/diff?
lock, change, test, commit, unlock
or
change, test, commit, merge?
Are you a locker or a merger?
it's not going to stop until you wise up, no it's not going to stop. so just give up.
When starting a software project on my own, I've found that it's always hard to keep myself motivated unless I have many uses for what I'm writing. Did you have lots of projects-needing-perl, or at some point did you start to feel good about helping other people by writing perl? What kept you working on perl to develop it beyond a couple-thousand-line hack?
You forgot the part about the niggers.
"Doesn't look like you need to know much about inheritance, polymorphism, and static class methods to me." -- says the man as he defines a static class method.
Never underestimate the bandwidth of a 747 filled with CD-ROMs.
I was just looking at www.wall.org and the site for your church, of which you are the webmaster. Neither of these sites use any perl whatsoever. Coming from you, I would have expected to see a super cool Perl based calendar and lots of other neat dynamic stuff. What's your reasoning for using no perl on either of these sites?
There is no reasonable defense against an idiot with an agenda
:wq
So in otherwords, you are a really good perl coder when you are the only one that can read your code. Sounds like a perl snob to me, not an experienced coder who knows that readability is as important as functionality.
Larry,
As a fellow Christian (I'm sure that revelation won't get me mod points) I must say that I have really appreciated your 'State of the Onion' speeches over the years. Thanks for showing that Christians can think and that we don't all mindlessly follow a 'televangelist' religion.
Now for the question:
Why do you think that the geek/tech community is so anti-Christian and what can we do to help change their negative stereotypes of Christians? Why is it that so many in this community feel that being a 'Thinking Christian' is an oxymoron? People like Knuth and yourself show that Christians can think and make contributions in the technical world.
I tend to believe that the anti-Christian bias has some justification - meaning that Christians have often not displayed the grace which the Founder displayed and taught us to live in. What is it that Ghandi said when asked about Christianity? "Christianity I like, but it's those Christians that I'm not sure about". I also suspect that the anti-intellectualism of the pop-televangelists that is unfortunately so visible bears much of the blame (often when I come across one of those so-called Christian TV shows I think I'm looking at some kind of religious mutation and when I realize that these folks claim to believe the same things I do, I wince).
Direct quote
t e. html
"Almost all of the Perl 6 core team has switched to Mac OS X...."
Found here:
http://conferences.oreillynet.com/pub/w/19/invi
Question: Is this indeed true and are you using Mac OS X?
Seriously, man, we've got PCRE's in javascript, Python, Ruby, XML schema, etc. But now Perl 6 is going to have yet another syntax! Are you sure you want to do this?
Maybe this is another question, but perhaps Perl 6 should actually be called something besides Perl?
Larry won't share that cooze. BTW perl eets dik.
You won't get most of the jokes if you haven't read the LOTR. No, watching the movies is not enough. It is preferable to not only have read the books, but to be willing to search through them to get context for the comments.
Of course now Jarkko Hietaniemi is adding Terry Pratchett quotes instead. This significantly improves the accessibility and humor value of said source-code.
Ben
There are 10 kinds of people. Those who understand binary, and those who do not.
When perl5 came along it had tons of new features and a good 90% of programmers probably never used them because they are lazy, and you could still run perl4 code through the perl5 interpreter.
Now perl6 is coming along and going to be an even larger shift from perl5 than 5 was from 4. Compatability is still being preserved. Do you think this hurts the adoption of the new features, and does worrying about compatability hurt the ability to change things that should be changed? In a nutshell do you think the time will come soon when it makes sense just to throw out perl and design something totally new using the ideas from, but not the actual old implementations of, the elements of perl4/5/6?
It is called Faith.
Sick fat sysadmin. Go home to your blow up.
No, that's not what I said. I said that qualities of good code include using "idomatic Perl" (i.e. not writing C in Perl) and making use of Perl's strengths (like hashes). Do these and you'll be a good ways towards writing readable code.
Oh, and by the way:
It's called Ruby.
He was being facetious, you stupid cock.
As others have pointed out, Perl's garbage collector does lend itself to the circle of garbage problem because it uses reference counting. Could you comment on the tradeoffs weighed when designing the garbage collector? e.g., Efficiency, time to implement, etc. If you could, would you reimplement it so that it used techniques like the Train Algorithm instead?
/<en
You forgot the part about the niggers.
Man, shut up! Did a black person kill your sister or something? What the hell is up with you? Get some therapy. Gaotse has already cornered the anoying troll market and wore it out. Get a new hobby. Beat it, kid!
By the way. Your definition of dynamically typed languages are far off. If they don't carry typecodes to check types at runtime, then they are not dynamically typed.
If e.g. everything is a string (tcl used to be that way, not too sure anymore), or a machine word (e.g. forth), then it is an untyped language. And there is a large difference between untyped and dynamically typed.
Also, it would be more correct to say that statically typed languages check most types at compile time. An obvious counterexample to "all types" would be an object-oriented language (otherwise dynamic dispatch wouldn't work). Or C, because it allows you to fake anything with casts and unions.
As for what constitutes a scripting language, I think that will be debated for ever, simply because it's not possible to define. Personally, I like Larry's answer in the Camel book.
Personal: I read your diary about your eye surgery from a few years back. How're the ol' peepers doing now?
Perl question: I also read your speech about Perl being a "postmodern" programming language. I've been listening to some Charles Ives lately -- yeah, that's about as much Perl in music as you can get. ;-)
Anyway, I'm curious how you view Perl 6 in a postmodern light. It sure seems more postmodern-ish than any Perl before it. Not only are you building in some of Perl's legacy postmodern ideas, but also the ability to add (post)?modernism from other languages. You're taking this postmodern stuff pretty seriously! Which, of course, is extremely cool and nifty.
Is this an intentional direction toward postmodernism, or does all this just happen to fit the term? In other words, has postmodernism been a philosophy that has intentionally driven the vision and development of Perl 6?
I'd like to mention the following quote from your speech:
"The very fact that it's possible to write messy programs in Perl is also what makes it possible to write programs that are cleaner in Perl than they could ever be in a language that attempts to enforce cleanliness."
Will Perl 6 continue to be the programmer's humble, submissive servant? :-)
With thanks and great respect,
-Brian Allemana
"Molest me not with this pocket calculator stuff."
- Deep Thought
Get your greasy nap away from me and go pick some cotton.
I find myself thinking in unix commands some time. Like scanning movie listings-- "grep ^Stuart".
I can remember in busier perl times (for me) finding myself thinking how I could do something mundane in perl, but not actually doing it unawares.
"You may all go to hell and I will go to Texas"
Sen. Davy Crocket to US Congress, Nov. 1, 1835
What's it like for a celebrity to be a part of a community of Christians? Do you pass the collection plate and hand out programs before service starts like any other member, or do you get the celebrity treatment there, as well? I guess I'm asking how deep and intrusive into your life this celebrity stuff goes.
Keep it up, I appreciate it, and the world needs more Christian heros!
Siggy Wiggy Figgy Tiggy a bana bo Biggy!
Very high level languages like Perl are far easier to program in than lower level languages like C and C++. No worries about memory allocation, array sizes, easy string manipluation and so on...
But of all the software currently running on your desktop, probably none of it is written in Perl. Why? Because Perl cannot be truly compiled. Sure, using perlcc I can convert a Perl program to C, but this is still experimental and doesn't really work well. Systems like Perl2Exe and Activestate's Perl Dev Kit that package the perl compiler and program into an executable are an improvement, but the resulting executables are large and have a high start-up time.
I'm sure there will be some people who don't consider this problem: i.e. leave Perl on the server-side and for general sysadmin tasks, as C and C++ have already got the desktop sewn up, but just think how much easier and faster it would be to develop a program like a GUI FTP client in Perl.
If there was a true Perl compiler, Perl could easily become the language of choice for many if not all GUI applications. Currently the only end-user targeted GUI app I have seen written in Perl is UploadAway--and even this is hardly aimed at a mainstream audience.
The basic POD format used for Perl's documentation is too simplistic, providing no support for tables.
It is not possible to obtain high quality print documentation either--sure, a man page can be converted to PostScript, but the result still doesn't look very professional. This node on PerlMonks also discusses these issues for anyone who is interested.
So, do you consider Perl's documentation to be a limitation to its more widespread acceptance? Could you use your considerable influence in the Perl world to start a new drive towards improving documentation?
"Hello Word?" Are you stealing that bastard paperclip's code again?
"If he thinks he can hide and run from the United States and our allies, he's sorely mistaken." Bush on bin Laden
Perl is so easy to learn and alows a lot of "Baby Talk"
Perl is easy to learn, and yes it allows "baby talk" in the same way that C++, Java, smalltalk or any other complex language does. Those who are just learning will use only a small subset of the language. This is always true.
it makes a good programmer indistinguishable from a amateur wannabe
I can certainly tell the difference, and I do so in phone screens and interviews for my company.
Someone just coming to the language can write code, yes. But they won't be able to write high-quality programs that take advantage of the language. This is true everywhere. Read "Effective C++" for a really good sense of what it is that C++ programmers won't know from day one, even if they've memorized the BNF for the language.
I bet you would, and love it! Yum.
Note to moderators: This is a serious question. You may disagree with what is said, but your disagreement does not make this question one that should be ignored. Please don't think that Larry Wall is fragile and needs to be shielded from confrontive questions. Note also that this question needs to be phrased in several ways to make its breadth fully clear.
Larry, now that you have seen what Perl has become after all the excellent work and all the years of effort, was Perl a good idea? Did we need another language? Would it have been better to have added features to an existing language, and to have made a more capable C++ interpreter, an advanced CInt, for example?
Now that Perl is a mature, full-featured language, do you think it is a properly designed language? When you first worked on Perl, did you imagine what it would eventually become? It was an easy language to learn then, and that was one of its advantages. Has Perl, now that it is mature, become just another language, with the exception that it is an interpreter? Are there any features of Perl that could not be added to C or C++? Are there features of Perl that were designed to make it easy, like implicit variables, that are not a good idea for a mature language? What are the features of Perl that make it a necessary addition to the numerous languages?
Question 1:
Perl 6 has introduced a whole slew of new features and capabilities that go hand-in-hand with Perl's nature as a "swiss-army chainsaw" of programming. Needless to say, I love having MTOWTDI, but what I'm curious about is: have you taken any steps towards a more performance-oriented focus? Most complaints I hear from my friends abuot Perl is that it's slow, and that almost any other language will beat it hands-down in terms of speed. I know there's only so much you can do with an interpretted language, but I was wondering if any steps were being taken or any special focus being made towards making Perl faster, possibly even making it a competitor for "standard" programming languages such as C. Understandably, this was never the original purpose for Perl, but I must say it's quickly developing into a pretty impressive general-purpose programming tool.
Question 2:
Perl 6 has drastically changed the way we know and love regexes. What I want to know is that, at least from the examples I've seen (in the Exegenesis(sp?) and such), practically _every_ regex example is longer and more obfuscated in Perl 6 than it is in Perl 5. Is this true, or am I just seeing things?
Magius_AR
I think you'll find your answer here... http://www.wall.org/~heidi/
It's no secret that Perl 6 is being designed/developed as a radically different (to the point of mutual unintelligibility) language than Perl 4 was a decade ago (and even Perl 5 is today). On top of that, in today's development there are a lot more people a lot more involved in the design (eg. Conway, Sugalski) than there have been historically. So, all that said, has demand from the community caused changes in Perl as a language that you would not have envisioned otherwise or that take it in directions you would rather not have gone in personally?
MOO;IANAL.
There used to be a picture linked here.
Irrelevant. Just because a person copies "public static void main" out of example 1.1 in Learn Java in 24 hours doesn't mean they understand what it means. I would wager that 90% of Perl programmers who use "my" regularly don't have a clue about lexical vs. dynamic scoping, but it doesn't matter because "my" does what they expect.
I know of some bible translators in a country I won't mention, where Perl is used to provide an automatic PGP-encryption of the plaintext emails into cyphered emails and vice versa, before anything is e-mailed out to the rest of the world or when received, before it is dropped in the mailboxes. For want of a real ISP the machine dialed out to a base of the same organisation elsewhere in the world where the same setup exists and from there the mails get send on in plaintext. All this is done to make sure that when communication is monitored no Christian texts are discovered.
Now you might say that that is not secure, everything is still in plaintext on the server of the missionaries and you're right. (not to mention the bibles in their houses, the work stored on the computer etc.) The reasoning behind this is, that the censor/secret police in this country have a policy what they don't explicitely know about, they won't bother with. They can't read the e-mail, so they don't know about it, so they don't need to take action.
All of this was hacked together by a bible translator (a linguist) on an of the shelve Redhat old.ancient linux machine. The man-pages provided enough information for him to finally get it all working.
Use Adsense for Charity
Will the Camel replace the Yacc and the Bison?
I don't have a question, and I know Larry won't read these posts. I just want to say that I've been using Perl since 4.0-something and it's saved my ass more times than I can count. In my job I get paid because I get results, not for what code it's written in. Many many times perl has arrived to save my bacon when manager X or Y wants some data processing done NOW DAMMIT. Without Perl I would have less free time. Thank you Larry Wall et al.
I've often wished for a Perl compiler capable
of creating static executables from complex
code. I haven't had much luck with dump, and
perl2c doesn't handle dynamic libraries well.
Are there any plans for a usable compiler for
Perl6?
---
:)
#!/usr/bin/perl
print "Hello World\n";
---
That seems much easier..
Serious? Seriousness is well above my pay grade.
First, many thanks for Perl, which has saved me much anguish.
I know you're an aikidoka, and after studying aikido for a year, I've come to see several similarities between aikido and Perl. For example, Perl gives you a nice feeling of blending with the problem instead of struggling directly against it, just as you blend with and redirect your attacker's energy rather than directly confronting it in aikido. Similarly, TMTOWTDI ("there's more than one way to do it") in aikido as well as in Perl (at least in my dojo, where understanding and reaching the goal is more important than slavishly copying the sensei).
My question is, did you consciously approach Perl with aikido in mind (or vice versa :-)? Or is it just that they both appeal to your personality in the same way?
Also, incidentally, what style of aikido do you practice?
``Life results from the non-random survival of randomly varying replicators.'' -- Richard Dawkins
WTF PHB?
If Jesus were on the earth today and were a programmer, would he be a Perl programmer?
Bob Wooldridge
what are the most obfuscated few lines of Perl you've ever seen~?
http://cltracker.net -- powerful craigslist multi-city search
If slash exhibits wonky behaviour, it has more to do with the programmers' [bad] ideas and coding than the implemention language.
To what degree are the features of perl 6 driven by real-world demands, e.g., improving the object model, as opposed to being driven by propeller-head fantasy, e.g., continuations?
I'm not knocking continuations, but I've never heard someone say, "Hey, you know what (insert your favorite language here) REALLY needs is continuations!"
My question is, where do I go from here? I'm wanting to learn everything there is to learn, and do everything that can be done with Perl. I'm not expecting to get to your level of knowledge, but I'd sure like to try.
I've already purchased the Camel book and that's where I'll go after the Llama book. What would you recommend after that? Perl Cookbook? Advanced Perl? Memorize all the PerlDocs?
No boom today. Boom tomorrow. There's always a boom tomorrow. - Cmdr. Susan Ivanova
No, you are a really good perl coder when you can write a program that expeditiously solves the problem and a non-programmer can read and comprehend what the program does. (How it does it is a different matter altogether;)
You look identical. You sound identical. You are both completely insane. And to my knowledge, nobody has seen you both in the same place at the same time.
Come clean. Is Larry Wall really just Wierd Al's secret identity?
Perl has many very useful language features that those "who should know better", such as Professors of Programming languages, have not thought to put into a language. Thank you for that!
However, there is one feature that, if made optional, could really improve the ease of writing less buggy programs: Could we please have some sort of optional strong type checking in Perl 6?
Without this feature, it is harder than it need be to write code to manipulate complex data structures without occasionally "falling out" of the graph. It is really nice to find that out at compile time, not runtime (or not at all!)
It could work something like inheritance: You can inherit everything from a scalar, so that by default it is all like normal Perl. But if you downcast, then stronger checking is there for you. You could put the downcast in the type signature of functions that want to know more about their arguments than that they are just scalars. This could be checked at run time. Compile time type checking could be available at request, but could still be restricted to a subset of your program.
There might be some sticky points, as I haven't tried to implement it, but please remark on the feasibility and utility of the idea.
My observation is that the quality of the tools bound the quality of the solution: people don't build a Cadillac from Legos.
How about an anecdote (or two) about a Red Sea-sized problem parted by a slightly unmiraculous, yet nifty, regular expression.
As has been noted elsewhere, the fact that other languages (JavaScript, VBScript) refer to their RegEx syntax as 'Perl-style' is a hefty compliment. Any disgruntlement about that?
Perl6: how soon?
Get thee glass eyes, and, like a scurvy politician, seem to see things thou dost not.--King Lear
Like Linus Torvalds, you are the alpha programmer, the founder and "benevolent dictator" of a major open source project. Of course, both projects now have large and well-structured teams of developers with many recognized leaders, but nevertheless, everyone looks to both you and Linus for guidance and leadership, and everyone accepts that you have the final say in issues of dispute.
:-)
The open source movement hasn't been around long enough for us to witness the transition to a new top dog in a worldwide, highly visible project, so we all have to wonder sometimes what will happen when you and Linus decide to pass the baton, and how it will be handled. Have you decided what has to happen for you to retire from the Perl project? Or do you think you'll be hanging in there at 75 and above, a John Lee Hooker of programming languages, until the day you flop over your keyboard? Do you think that you'll hand over the scepter to a successor at the pinnacle, or do you think Perl can be taken over by some kind of committee? Doesn't there have to be an individual who has final say on important and possibly controversial decisions? Do you think the developer community will accept a new leader on your sayso, or will there have to be some sort of election? And if you do consider choosing a successor, what will your criteria be?
BTW, I'm an atheist, but I hope you don't mind my saying God bless you for creating Perl.
Always keep a sapphire in your mind
He claimed the design of Parrot was fundamentally flawed and pointed to it's highly unusual design and the very high number of opcodes. I was wondering exactly what you're thoughts are on Parrot. It's claimed that it'll be a good target for any language, both static and dynamic, but are you really interested in pushing this? Could you see Parrot as worthy competition to .NET in the cross-language VM space? Is having a very large number of opcodes an advantage or a disadvantage?
While I am not very familliar with Perl and it's capabilitys, I often hear and experance reading others code as a sometimes very challenging proccess. What some perl programs do in one line, others do in 8. Do you ever have trouble reading others code? If so, have you ever considered making a more standard method of coding to assist all in future work of old code?
www.oobersworld.com - For those that ride.
Code incompatibility and re-writes were a big job in the past. Do you anticipate as many headaches in the transition from Perl 5 to Perl 6 as there were with the transition from Perl 4 to Perl 5?
However, it's less useful when trying to follow other people's code, as it means there's more to understand. `There's more than one way he could have done it' may be a problem if he's chosen a different way from yours. This disadvantage becomes much more important for large systems, where careful standards and practices are often necessary to make them manageable - of course, this applies more to high-level design and interface issues than low-level coding ones, but each affects the other, and with an estimated 55-80% of programmer time spent on maintenance, it's a significant issue.
So, where do you draw the line between favouring the fresh coder and favouring the maintainer? Where do you think Perl sits at the moment, and with hindsight what (if anything) would you do to change that balance?
Ceterum censeo subscriptionem esse delendam.
Yes indeed!
About 4 years ago, fresh out of school on my first job I had the pleasure of having to "maintain" some 70 odd files of java that did one simple task: read and validate the contents of a web form and use that to do a couple queries in a database, then draw a little status page. 70+ files of complete shit! I "maintained" it by deleting that crap and rewriting it in 100 or so lines of (fully readable, non-obfuscated) perl. Even as a complete amateur at the time, it was obvious that it was complete shit. It supposedly took these two professional Java coders about a month to write that (which I believe, considering the amount of flaming hoops and completely pointless cruft). Thinking back on it still makes me shudder just thinking of how their brains were wired up...rambling about this, mulling over that, a design pattern dispatching fecal payloads into another design pattern, which then ejaculated into some labyrinthine clusterfuck of noxious XML, only to be turned back into strings again and farted into some hidden log file in some language they invented, and later parsed and converted into a web page. It was the most bizarre thing I have ever seen.
In the original focus of Perl as a Reporting Language, an important component was the format. While use of Perl has grown over recent years, that feature has just about disappeared from common use.
Have you considered modifying format to make it more representative of modern needs?
(* By the way. Your definition of dynamically typed languages are far off. If they don't carry typecodes to check types at runtime, then they are not dynamically typed. *)
Whose's classification system are you using?
(* Also, it would be more correct to say that statically typed languages check most types at compile time. *)
So "staticly typed" (and "dynamicaly typed") are a *continuum* in your opinion? I guess I can agree on that.
(* Personally, I like Larry's answer in the Camel book. *)
Yes, but it ignores a commonly-used term/concept whether he likes it or not. Even he does not have enough power to change most tech lingo.
Table-ized A.I.
You should be using PHP anyway, not C++. =P
10 PRINT CHR$(205.5+RND(1)); : GOTO 10
What could be done to market Perl as a cross-platform GUI-interfaced language, suitable for creating pretty* interfaces in windows, gnome, and kde?
( * i.e. not like TK. Perhaps something mozilla or GTK based.)
Even while such applications are possible, it's not seen as a 'normal' way to use perl, and people have to put up with inferior languages for such apps.
On that note...funny (I thought) Perl story...
.ptl files w/ search-and-replace for case-specific names! Now, that's a pretty awful idea, but things got worse.
I was working for the government on some big defense-related project. We were doing it in C++ (and they were trying to shoe-horn all their Ada ideas into C++, rather than use classes and other good stuff.
Somebody got the brilliant idea of generating a design template using Rational Rose, then going in and changing the
The local 'Perl guru' was assigned to write a Perl script to do the search and replace. He essentially wrote it as a C program, so it took a while to write, and took FOREVER to run. I knew enough Perl (though no guru myself) to re-write it as a 10-line thingy w/ hashes (we called em associative arrays back then) and the groovy reg-exp replacing, cutting the run time down drastically. It was still a horrible idea, but at least it took less time, and I really didn't like that GURU anyway.
True life tales of programming...
Is this really a issue for perl? or just a matter of time?
If this isn't a perfect setup for a Larry Wall-ism, then I don't know what is!
"And like that
Right now in order to run Perl scripts efficiently on a webserver one must compile them in mod_perl, which may or may not be backwards compatible with standard Perl.
Will Perl 6 solve this problem? If I am a Perl programmer I ought not to have to write my web scripts twice, once in standard CGI-type Perl and then all over again in mod_perl.
From the everyday mortal sysadmin/engineer's perspective, what is the need to expand PERL any further than 5X?
- High Tech workers, please say NO to Union Carpenters, their Union sees fit to control our compensation.
I haven't used Perl much, because I find it irritating that variables are global unless I use my. I consider this bad programming. I would rather have to declare a variable globally, than declare a variable local with my. Do you plan to change this?
Larry -
ObCompliment:
First off, thanks for the gift of Perl - it fits like a comfortable old leather jacket and is like good glue - just a thin layer and you can stick anything together with it!
Your form of expression belies your love of language: I get the feeling that a well-turned phrase gives you as much satisfaction as idiomatic Perl spoken (written?) by an enlightened one.
Q:
Having a noted interest, skill, and background in the art and science of language (both human and machine), do you believe that skill in multiple spoken languages improves our ability to communicate in any one language, in terms of being better able to codify (or express) abstract concepts within the framework of a defined linguistic rule set? If so, is do you feel there is greater benefit to be derived from mastering "opposed" languages (perl and lisp, or English and Japanese) than "similar" ones (two romance languages, or perl and PHP, for example)?
Thanks again...
But a bigger issue for me as a Perl app writer has been ease of installation. Is this going to get better in Perl 6? Installing a Perl app can be a fairly complex process, especially if you need lots of CPAN modules, and a lot of them call C code that needs to be compiled. Also, there seems to be a general assumption that modules are going to be installed in /usr, but many end-users might not have the privs to do that. None of this is a big deal in the world of sysadmins and webmasters, but for naive end-users it's a problem. Will the advent of Parrot make it possible to give the user a big ol' bytecode file that includes everything? I know it's going to become easier to glue C and Perl together -- will this translate into an easier exeprience for the end-user as well?
I guess I'm just spoiled by the MacOS X experience, where an application appears as an icon in the Finder, and to intstall it, all you do is drag it to the Applications folder. Wow! Java also does a good job of streamlining the installation process, although it's at the cost of making the standard library ridiculously huge.
Find free books.
taken! (by Davidleeroth) Thanks Bingo Foo!
Whatever gave me conciousness, that's God.
c-hack.com |
A while back a subset of java was ported to embedded processors. Instead of being its typical bloated and slow self (if garbage collection is so great why is java normally such a memory pig?) it's lean, mean, fast, and compact.
Have you ever considered such an implementation for perl? It would be very cool to be able to write very high performance compilable programs in pure perl, even if one only had access to a subset of the syntactical language features.
The 'Inline' module makes C much easier, but that's not quite the same thing. One problem that it doesn't solve, for instance, is that C isn't
portable, where Perl is very portable. perlcc is interesting, but isn't really the same thing.
How sweet, she's wearing a calculator watch!
$subj
When are you going to release perl 6?
Larry, we understand you are a home automation enthusiast, can you tell us something more about your setup? Powerline/Wired/Wireless? Cameras? Sensors? A "smart" home? Just Curious. Thanks.
Larry,
Why are you suck a fag?
Mr. Wall,
Do you think Perl6 will be able to compete with Java on its own ground? (Will Perl6 be a kind of OpenSource version of Java?)
Hello Larry !
Some criticize Perl because they feel that it's particularly difficult to maintain or re-engineer an exiting Perl codebase.
One reason that these folks often give is that Perl not enforcing any programming paradigm makes it difficult for teams of hackers to agree on conventions or to stick to a programming discipline.
What are your feelings towards this ? Do you plan to address this further on in Perl 6 ?
Sincerely,
Fabrice
The Camel Book is (IMHO) not only the best technical reference book I know of; it's a masterpiece in a unique genre of literature. What goals did you have in mind when you wrote it? What's important in a really good technical book? ("You" refers to the other authors as well.)
Reinventing the wheel is a way to learn fuckwit.
Like you never did it if you know what the fuck you are talking about.
Do you think Perl will ever be considered an 'Enterprise' language, meaning 'ready for the bigtime' by the large corporates?
Do you think there is anything holding it back?
Do you think the TMTOWTDI motto of Perl is a negative because large corporate customers prefer languages like Java which enforce certain coding styles, and sandbox the programmer to a certain extent?
Will it fly?
Or will it be a too-heavy grounded bird?
I am not a Christian, and this is because of what "Christianity" has come to mean to me.
To keep it simple, let's just take one concept: the afterlife. To me, the belief that the concious narrative experience of one's own being continues after death in one or the other of the pseudo-material locations known as "Heaven" and "Hell" is part and parcel of Christianity.
If you don't accept that (and it's just one of the metaphysical teachings of Christianity which is difficult for me to accept) then, like me, you're not a Christian by my definition.
I know that other people consider themselves "Christian", and go about life being basically good people, but don't concern themselves at all with Christian metaphysics. They're cool people, but I don't understand their definition of "Christianity".
Larry, what do you think about the afterlife, "Heaven", and "Hell"? What do these things mean to you?
-- Only unbalanced people can tip the scales.
I often think about Perl while in the Missionary position.
Does that make me a bad person?
Due to Slashdot's line length restrictions, lines of code over 50 characters long may not display correctly. Please be aware of this if you include code samples in your question.
You may also add that posting Perl code wouldn't go through the lameness filter due to an overuse of $ signs and other symbol characters.
"Naughty, naughty, naughty, you filthy old soomka !"
The use of * for array flattening in Perl 6 is stolen straight from Ruby.
Ruby's lack of strict.pm, and the optional semi-colons are both big drawbacks.
A philosophical difference: Perl retains its "syntax and operators indicates typing, with autoconversions where needed" philosophy where Ruby is quite intentionally opposite with its "uniformity of operaters and syntax with different datatypes defining each operator as makes sense to it.
In my experience, the main drawback of Perl is it's tendancy towards unmaintainable code. Most code, in my experience, ends up solidy in the "write only" category. Certain Perl features, such as "use strict", do try to coax programmers into writing more structured code that's hence easier to maintain. I guess my question is simple: I know that Perl 6 is going to have some very powerful features in terms of defining how a given a script is interpreted, are there going to be more pragma's along the lines of "use strict" to help enforce good practices in coding?
There are currently some problems with the Perl process itself that make it less scalable for applications that use large amounts of memory, as well as applications that you'd like to keep running awhile. Will there be a way to recover from out of memory situations without recompiling the Perl core (which to my knowledge only allows you to recover once)?
I've also found that Perl doesn't seem to re-order memory when it's freed, meaning that requests for large memory blocks can cause small memory leaks to explode since they'll pollute memory. Do you have any plans of making changes here?
Use Python instead.
Apologies.
my "WARNING: a Christian topic follows" was not intended as whining about being persecuted. Some people are bothered by religious topics, I am sensitive to this, and I invite them to skip to the next message.
Slashdot is News for Nerds, not Novinas for Nazarenes, so the topic might be inappropriate. My question should be moderated up/down accordingly.
I find it amusing that someone who goesn't give an excrement on a topic should bother to post an announcement of this disinterest.
Incidentally, I just learned that "bias" should be used when you unfairly favor something, and that "prejudice" should be used when you unfairly disfavor something. Ergo, everyone should whine about "prejudice" (not bias) when we feel persecuted. (Everyone should feel free to feel persecuted for other stuff than just religion.)
Everyone seems to mention, when introducing perl, it's "natural language" roots and inspirations.
What i've never seen, is why such complex rules and DWIM logic are held to be a superior desing.
Any thoughts or ressources on the non-historical advantages of such rules over more restricted/formalized forms of expression?
YHBT IANAT LOL IOW HAND
Ok, let me follow your logic here. You say Perl CGI is less easy/intuitive to use than PHP, which is usually used as an Apache module. You then say that mod_perl might do the same for you, which is correct BTW, but then you go on to say that PHP "is a lot easier to use in that particular niche"...
So, you are comparing PHP to mod_perl, which you admittedly have not learned anything about, and then conclude that PHP is easier?
I'll be blunt, you're a fool.
Sticking feathers up your butt does not make you a chicken - Tyler Durden
Irrelevant. Just because a person copies "public static void main" out of example 1.1 in Learn Java in 24 hours doesn't mean they understand what it means.
By that logic, you don't need to know how to program at all, you can just copy full programs from open source projects.
The underlying argument is that Java requires more "advanced" programming structures to do simple tasks than Perl. Whether beginners understand them or not is irrelevant.
Never underestimate the bandwidth of a 747 filled with CD-ROMs.
Get your greasy nap away from me and go pick some cotton.
So that you can make a white hood, no doubt.
Hmmmm. I wonder if the KKK uses open source or not.
A scripting language lets you get the job done in minimal time without reinventing the wheel. It makes easy things easy and hard things possible (and usually easy because someone else already wrote a module to do that).
:)
A programming language lets you get the job done "correctly" for some academic definition of "correctly", which isn't any more correct than what you could have done in a scripting language, but it was a lot harder, took a lot more time, and involved a lot of artificially complex things like "design patterns", so it MUST have worth all that extra effort.
(or more specifically...)
Scripting languages are usually typeless or dynamically typed, have features such as named function parameters, garbage collection, a very large standard library with high-level interfaces, and use TK for their GUI. Basic types in scripting languages are strings, numbers, lists, and associative arrays. They do not usually require being precompiled, as they are either interpreted or pre-compiled at the beginning of each run.
Programming languages (in the non-scripting sense; scripting languages are a subclass of programming languages) are usually strongly typed, have unsafe memory allocation, and a low-level standard library. Basic types in programming languages are char, int, long, float, double, etc, and occasionally even string. They require compilation to machine code or occasionally bytecode. (Java is half-way between a programming language and a scripting language.)
Perl's philosophy is largely a complement of this sentiment. This kind of thinking was in vogue for a long time, and Perl's bucking of the trend was (largely) responsible for its popularity.
Perl advanced the notion that syntax is not a byproduct of grammar. It should not be an orthogonal representation of the language's capabilities. It is important that the concatenation operator be one or two characters. A language is for humans to use; it should reflect how humans think. Give the computer the tedious job of normalizing that input, and spare the human's cycles for more important things.
Read the Apocalypses, or Larry's intro to the ORA books, or the Exegeseses(es?). You'll note artifacts of this philosophy everywhere, including in a discussion of original complaint, anonymous character classes: Unicode makes unnamed character ranges less of a Right Thing than before. And with real set operators for named classes (you can say Word Characters and Whitespace but not Digits), they're a lot less necessary. They're still in there, but it's a couple extra characters to reflect their diminished relevance.
There are some that disagree with this thinking, but I'd question what attracted them to the language in the first place.
print RELIGIONDISCLAIMER;
;)
Mr. (perhaps Brother) Wall, I have for a very long time admired you. First and foremost I admired your language and your writing style as exemplified in the Camel books and different quotes from you.
Finding out you were a Christian also increased my admiration. I too, am a Christian. I am a geek, and I love perl. Lots in common
I'm more interested though, in the real Larry Wall. Not the guy in the Camel Book, the guy behind the geek code block. Could you tell us a little about your family? Where you live? What (if any) denomonationl church do you attend? Also I would like to hear you expound some of your beliefs and such on religion and God.
RELIGIONDISCLAIMER
warn "Just Another Perl User" if $anyone_cares;
> it's extremely convenient to make something like
> that which you can just drag and drop onto a desktop
Very true, and as much as I'd like to recommend something like PostgreSQL it's really overkill to deploy a server on a desktop.
My question is, are there any "standalone" free software database/RAD software systems. (And I don't mean Perl/Python + something...) I want something that's as straight forward to deploy as Access.
Mr Wall,
I've been using Perl for quite a while now. I've fallen in love with it. It's my first choice language, (when I do have a choice).
That said, I'm very nervous about Perl6. What if it ends up suffering from second system effect? What if it just isn't very good? Theory and practice being so different, it's possible for you to be completely wrong about where Perl needs to improve.
In short, what would be your course of action if Perl6 isn't very good in the real world?
hey, larry, come on...you gonna make a language where i can say what i want and it'll do what i want?
Presupposing that consciousness is something which can be "given"...are you *that* sure that it isn't a result of extremely complex system behavior?
Furthermore, saying "that which gave me consciousness is God" does not answer the question for Xtianity in particular, because it's defining God at the end instead of at the beginning. (the reasoning chain goes-->I seem to have consciousness-->I have no clue how I got it-->something superpowerful must have given it to me-->I'll call that thing God. Therefore there is a God.) I could just as well say my cat is God, therefore God exists. Which, by the way, if you had met my cat, you would know is just about as far from the truth as it gets.
...which could start to explain the egyptian pantheon :)
To answer your first question, yes; but let's back it up even more. Consciousness is, of course, extremely complex system behavior. But how did that system get started? Even if we evolved from microbes, who created the microbes? Did the universe simply always exist? Science says no, right? Then what came before? If there was a big bang, who started it (frankly, I think the big bang is about the most creationist theory ever to come about)? Whoever did, it's who I call God. I guess it might be kinda like saying "whoever pooped in your litter box, that's your cat." I don't need to see your cat to know it exists.
So I guess I should amend my original statement to "whoever created existence, that's God."
c-hack.com |
Seriously. Perl 5 will be around for a long, long time, and even after Perl 6 is out for awhile, Perl 5 will likely still be the standard with the more conservative(and mainstream) *nix OSes.
:-)
And at the same time, learn Perl 6(start now, at parrotcode.org). While some here will say Perl doesn't really have anything new, I say that isn't necessary. Sometimes it's enough to just do something better than it's ever been done before.
Seeing Perl6's introduction of more powerful map-like and reduce-like operators in the hypers, I would like to know if you have used and been influenced by the modern APL derivatives: Dr. Iverson's APL successor, J, is more well-known; but Arthur Whitney's K mixes more functional, Lisp-inspired abilities into the language.
Once Java has made "Virtual Machine" a respectable approach, the next step seems to be "Universal Virtual Machines" that allow many languages to interoperate. How well does Parrot play this role as compared to JVM and the CLR?
Another interesting question is how difficult would it be to migrate byte codes between the different environments (libraries allowing). There are already attempts to allow this between the JVM and the CLR; would that be easy/possible to do the same for Parrot?
> Would you like to see more advanced
> applications being built with Perl
> verses a compiled language?
Perl is partly a compiled language. It's compiled every time you run it.
Perl is the scripting language "to beat", so like C++, it is often the target for insulting comments and unfair comparisons by advocates of other languages. Usually from fanboys who can be dismissed, but surprisingly often from intelligent and educated people who ought to know better.
You, however, never seem to enter such discussions, much less answer in anger. How do you manage that? Doesn't it hurt? Or is it your Christian faith that gives you strength?
Not better, just different. And Perl's had tied variables for longer than it's had OO. Tying, say, your aliases.db to a perl hash in a simple maintainance script can be a very effective and natural way of working. For larger, more formal work, you're often better off with a more formal interface, but tied variables have their place.
Whose's classification system are you using? English. If the programming system can't somehow tell you or check the type of something, then it isn't a typed system. Hence untyped. But of course, if you can come up with some dynamically typed system not using any form of typecodes, but instead relying on e.g. magic, I'd be happy to say I was wrong.
Can you envision a Perl version of the J2EE stack, and what would it be like? And do you see Perl as a good language for Enterprise Application development?
In answer to your questions, they are yes and yes.
For mixing HTML and Perl code, there are plenty of template solutions, html mason, ASP... can't name any others right off but there are lots. Personally, I don't like the Apache::ASP module because it depends on too many other modules for features I don't even want. There are different template modules for different needs, some are much like PHP.
As for the Perl DBI, the syntax is somewhat similar to that of PHP's and nearly functionally equivalent. So yes, it's just as easy.
Sticking feathers up your butt does not make you a chicken - Tyler Durden
Guido van Rossum and Python.
gimme dat perl
yabba dabba doo
How often do you get confused with Larry Flint?
Any time someone tells you OOP has an absolute definition (with pillars, requirements etc.) they're probably lying to you. Object oriented programming has an evolving definition (which is starting to solidify, but could still change). The problem with many languages that implement OOP is that they implement a static view of OOP (as perceived by the language designer at the time of the implementation).
Actually, because Perl's object orientation is "bolted on" it is possible to implement any view of OOP as appropriate to your own current opinions. Or (perhaps more correctly) as appropriate to the problem you are tackling. If encapsulation is all you need, implement encapsulation all by its lonesome. If you need it all, implement it all. If you have some experimental ideas about an expanded definition of OOP, implement them for a single project.
With the caveat that strong typing != OOP, type is another example of Perl's dynamic nature. With object typing, you can implement exactly the parts of strong typing that you need.
Perhaps the right questions is: "How dynamic is OOP in Perl? Can it be expanded to include aspect-oriented programming?
Eternal vigilance only works if you look in every direction.
...Perl6.
As a committed user of Ruby, I find this question just plain silly. Perl has an enormous library and an enormous user-base. For many things I still use Perl. When swagr's ported all of CPAN to Ruby, I won't need to anymore.
But some people may still prefer Perl. Grow up.
Eternal vigilance only works if you look in every direction.
Did you ever want to choke him? Do you consider being a utter boor good advocacy for Perl? If so, Tommy Boy fits the bill.
Comparing it to Windows will be a moot point, since El Dorado is going to have a 40% larger code base than XP.
(* If the programming system can't somehow tell you or check the type of something, then it isn't a typed system. *)
Well, it is sometimes said that the "programmer must manage types", meaning that any "typeness" is up to the programmer to handle properly.
I guess in a strict interpretation, if the language does not recognize the concept of "type", then it could be called "typeless", but in practice the *concept* permiates many design decisions, such as how the API handles doing math on non-numeric values.
BTW, my pet language, L, is pretty much "typeless" in that sense.
Table-ized A.I.
So, if you were to design a language other than Perl, what would it be like? What niche would it fill, and how would you approach it? How would you learn from the application of natural language in Perl, and how would it be different to meet the expectations of modern Programmers Needing To Get The Job Done (ie, would it be less C like, as scripting languages push C into a smaller niche?)
Where does "Science" say that the universe couldn't have always existed? It looks very likey that there was a Big Bang, but that doesn't mean that nothing came before it.
You can't say that God created existence when God is already an example of something that exists. It makes no sense. What created God? And if you say that God always existed, then why can't we say that about the universe? Why does God have to be a who (a personal God)?
From a scientific viewpoint, the concept of God adds more questions than it answers.
Happy people make bad consumers.
Supporting Perl 5 on parrot entirely has one serious problem, in that XS can't be fully supported. In order to do what you are proposing means rewriting parrot from the ground up to include XS legacy support
Eek, I left out a "not" and made it sound like IE does more incremental rendering than Mozilla. Corrected text:
One other advantage of using CSS rather than tables is especially applicable to Slashdot: over a slow connection, users of older browsers such as IE 6 for Windows can not see the first comment without waiting for the rest of the comments to load. Mozilla can display comments one at a time despite the table-heavy layout, but last time I checked, it can only do so in Slashdot's light mode.
The shareholder is always right.
That's my whole point. I don't think God exists, per se. You have the something (matter? or if you like, 1), and the nothing (antimatter? or 0), and the void that came before it, the absence of both something and nothing; and you have God, which is whatever was around when everything was null.
It was my impression that it was widely accepted among scientists that the universe was x years old, and therefore had to spring into existence at some point. But I could be wrong. That the universe simply always existed seems impossible to me. Everything that exists in the world had to be created at some point, out of existing matter: Slashdot, my car, this computer, etc. I can't believe that the universe just exists on it's own anymore than I can believe that no one is responsible for making Slashdot. I define God as the thing that always was, that created the universe, and therefore, is incomprehensible. I can't say that the universe always existed because it itself can be seen, studied and understood. God, being unable to be comprehended, is therefore worthy of worship. I'm not sure if I'm getting my point across or I'm dancing around it. It's a tricky point to make.
Okay, let me try another analogy. I can rip a CD using iTunes and make mp3s from it. But I don't understand the algorithms behind it, I just know which buttons to press. The person who programmed iTunes is at a level of sophistication higher than me, at least in mp3 programming terms. By the same token, we can all go find a woman and make a baby (theoretically; this is Slashdot). But no one knows really how a human is made; no one can put consciousness into lifeless tissue. Except God. Jesus has even done it (or so I believe).
Personally, I belive that to think God is a who is pretty dumb. If I were to try to describe God, I'd say He's a consciousness. Either that, or he is existence. When they say man was created in God's image, I figure that means something more like a disk image, rather than picture. The key point about this image being it's ability to make things for their own sake, not just to use them for something, which is what seperates us from animals (I figure).
c-hack.com |
My other favorite language, probably because it is at the other end of the language spectrum, is Eiffel. And if you think Perl struggles for commercial acceptance try finding work as an Eiffel programmer. So most of my use of Eiffel comes down to design concepts. My favorite one is Design by Contract(TM) (yes, Meyer's got it trademarked). Is Perl ever likely to get preconditions, postconditions and invariants as part of the language? I notice that Damian Conway's parser grammars are now part of Perl 6 (yay!). Is his Class::Contract likely to be absorbed into the syntax as well? Thank you for Perl and for keeping it interesting.
That doesn't follow, at all.
That's an inaccurate generalization, that is only supportable by two minor instances:
Nothing else else about Java fundamentally requires more "advanced" programming structures than C++ or Perl.
Yes, or partially untyped, like C is. As long as two distint types use the same amount of bits in it's representation, C allows you to interpret those bits in any way you like with casts. but in practice the *concept* permiates many design decisions, such as how the API handles doing math on non-numeric values.
I have no idea what you mean here. If you mean things like pointer arithmetic, I agree, because pointer arithmetic can be quite useful, and I guess some languages have an API for that instead of doing it in the base language like C. Things like vectors, matrices and formulae are usually handled in a typed manner.
But yes, there is room for many different typing schemes in the world of languages. And many successfull languages are in between the three main alternatives (which of course can be subdivided further).
I have never heard of L though...
Nothing else else about Java fundamentally requires more "advanced" programming structures than C++ or Perl.
I cannot agree with that. (First, I never mentioned C++, I'm talking about perl vs. java here. C++ is a whole different story.)
To use most of the Java built-in features, you have to understand OO enough to be able to instantiate new objects, call public methods, and handle the exceptions they return. And this is the case if you wrote your hole program as one "public static void main" function. Otherwise, you'd have to know how to define a class, use interfaces, etc.
Basically, it's OO+Exceptions vs. functional interepreted script. I know several Perl programmers who can do wonderful things in Perl, but Java is way out of their league -- you probably know some, as well. Do you know any Java programmers who wouldn't be able to handle a scripting language like Perl?
Never underestimate the bandwidth of a 747 filled with CD-ROMs.
Any chance sometime in the future perl will have compilied (no bloated) binaries? I have a feeling most C users won't switch due to the fact perl is interprated rather then compiled. We would love nice perty compilied binaries!
Can you explain why Damian Conway is apparently "second in command" for Perl 6?
Where do I find a pic of that daughter? Any in the tub when she is, say 17???
I have had problems with numerous limitations of the Safe container system in Perl 5 and unfortunately there was no discussion in RFC's, apocalypses or parrot mailing lists about a possible solution.
The two major problems of the current implementation are that modules can't be used well from a Safe conatiner and that code from another container can't be called (Perl's opcode module segfaults).
What I would like to see is a system that would enable code from different users to be run in a single program, with limitations and permission checks, transparently. (A bit like lpmud game engine does for it's lpc, albeit that is a bad and limited example.)
-Kvorg
Hi Larry,
I hope you're doing well. How is your
eye?
I'm developing my own language nowadays, after getting tired of OO Perl (which is excellent).
:= value defines the way the value of name is evaluated when it is used, ie. a function. name.subname can be either a value in a hash, a method of an 'object', or a value of a hash returned by a function - who cares? A sentence ending in a dot makes the definition constant. And stuff. I find myself rebuilding a lot of Perl's inner structures. Stupidiosity is all mine.
I'm going along the lines that a name = value is calculated "immediately", whereas a name
I tried to do like stuff in Perl, but failed at a simple attempt to load classes dynamically through recursive eval(). Will eval() be recurseable in Perl 6?
Should probably have spat that out better, but I'm late anyway. Bollocks.
I think, therefore thoughts exist. Ego is just an impression.
As a non-christian, perhaps I can offer some enlightenment. To begin with, I do no believe in a single all-powerful being. I see no evidence of such a being, and I feel no need to believe in a higher power. On the other hand I do not dismiss the possibility of the existance of such a being - I see no evidence of that either. In short, I am agnostic.
Were I to believe in a higher power, it would not be the christian god, and certainly not as portrayed by the various modern demoniations. My reasons are quite simple:
Much of the church's morality it derived from letters and books of man included in the bible, which do not accurately reflect gods intentions. There ideas have no place in modern society. Christians cling to the ten commandments, but ignore the rules that are laid down in the pages which follow them. Have you had your mildewed leather clothing ritually cleaned by a priest?
Too many christians use divine forgiveness as a safety net for their mistakes. Its a great way to avoid the whole psychological problem of a conscience - dump the whole problem on god's doorstep, and he's says "there there, that's ok".
It works wonderfully, until you're on the receiving end of whatever evil was done. Forgiveness doesn't undo fraud, theft, murder, or a billion other crimes. But in a christian society it does make the courts take a more lenient view, despite this being unconstitutional in most of the world.
To be fair, all of these are weaknesses of people, and the organisations that support the religion. I am avoiding the inconsistencies of the religion itself (something that I would have assumed would get on the nerves of geeks more than anything else), not to mention the number of conflicts or murders in the modern and medi-eval worlds that have been in the name of this religion.
If I tell you that BASIC is better than Perl, you will probably laugh. But BASIC has a 38 year history, is supported by the world's largest software company, and used by over 8 million developers worldwide. Perl is 15 years old and has somewhere over 1 million developers. The popularity of BASIC leads to misinformation and ridicule of Perl.
THAT, is religion.
i-name =twylite [http://public.xdi.org/=twylite], see idcommons.net
Just testing if you could see that OK :)
But seriously -- how goes the corneal transplant T+4.7 years? There hasn't been an update on your transplant in quite some time!
thelocust[dot]org
perldoc -f print
print @weird_syntax;
is *NOT* equivalent to
print for @weird_syntax;
In the first example, $\ is printed only once. In the second example, $\ is printed for every print in the loop.
Try the following examples. Notice my use of the -l switch which sets $\ to $/ (newline by default.)
perl -wle '@weird_syntax = 1..10; print @weird_syntax'
perl -wle '@weird_syntax = 1..10; print for @weird_syntax'
You will see they are not the same.
and faster to run
Way back when my parents finally got the internet, I began my interest with computers. I downloaded AOLPress (one of the first WYSIWYG editors) and taught myself HTML. But that got boring and I moved to JavaScript, until I realized nothing useful could come from a bunch of cookies and changed forms. That's when I stumbled onto Perl. I bought the Camel Book and have read it three times through, alongside the Cookbook, and CGI Programming. I absolutely love Perl and all the amazing problems I can solve (or die trying!). Nevermind I only used babyPerl (linear programming) back then; it was more than enough for many school assignments. And for the past four+ years I have added on, spending a couple hours every week fixing some dusty corner of the world. This past year, even, I tied the DBD::mysql library with the National Honor Society roster to easily and effectively manage everyone's service requirements. Perl saved me hours of tedious work
But now I'm listening to a humdrum lecture about string concatenation. It's been two weeks and already I miss forgiving $variables and print. This whole iostream.h (which I think is deprecated) cout << endl nonsense is really getting to me. What's wrong with \n anyways? It's not like C++ even is aware Unicode exists, much less variable interpolation.
So Mr. Wall, would you support the College Board in adapting Perl as the subset language in order to teach advanced computer science? Would you advocate it? I hear next year they're shifting to Java (amist everyone's grunting).
From a financial standpoint (which many districts much consider), Perl is far less expensive than proprietary compilers like Borland here. I personally think the open-natured and well-supported community, that has nothing but nurtured and encouraged me with this passion, would provide a much more enriching experience. After all, in my five years of stupid mistakes, I have yet to crash my computer with Perl when it took me two days to figure out is a no-no in C++. Granted C++ is a lower-level language that can do more exacting tasks, but if the class only gets to recursive functions at winter break, how far do you think we'll actually delve?
PS The apocalypses hardly seem damning, and I actually can't wait to use the new regrex.
Perl runs on, well, damn near every common platform in existance (and a few not-so-common ones).
Are there plans to move Perl into other areas, ie embedded (Perl/PalmOS kinda thin)?
What's that smell? Ah, that's my karma burning...
after:
and ?"Provided by the management for your protection."
Well, this is exactly the biggest misunderstanding of Christianity, that Christianity is just some kind of belief of afterlife, either entering heaven or hell.
The "real" christianity, that Jesus came here for, is to pay the debt of our sins, so that we can mend the relationship with God, and live an abundant life everyday by walking with God. The key is your "relationship with God" right here and right now, and how you keep it until the day you die. Not something abstract about afterlife that you don't have to worry until the day you die.
The testing stone of what it means to be a 'real' Christian: The relationship between him/her and God (Jesus), and whether the Holy Spirit lives in him, because that's the given sign of inheriting God's kingdom. (Eph 1:14)
I just hope to be able to clear up some common misunderstandings of Christianity, which most people just think of it being something as simple as "heaven or hell", and not knowing the real meaning.
. I think the language architects who aren't living in reality tend to like multi-language solutions a lot more than ordinary folks do.
Do you folks, agree with that because i don't. My last product involved writing a java server, that produced XML that was passed into javascript by a perl script, using a custom minilanguage for the
template.
read "The Hidden Face of God" by Gerald L. Schroeder. Then you will understand.