Want to read Slashdot from your mobile device? Point it at m.slashdot.org and keep reading!

 



Forgot your password?
typodupeerror
×
Perl Programming

3rd State of the Perl Onion 60

Geoff Eldridge writes " Larry Wall has made available a copy of his 3rd State of the Perl Onion which he recently delivered. You will need a basic grounding in molecular chemistry to understand this year's onion." Larry is (as always) pretty dang wierd. But it is nice to know that the end of cobol is iminent.
This discussion has been archived. No new comments can be posted.

3rd State of the Perl Onion

Comments Filter:
  • Brain the size of a planet, and the best language Larry could come up with was Perl. What's wrong with this picture.

    I used to think "at least perl is ok as a text processing engine". After doing web pages using it, now I'm not so sure. The wierd syntax with a zillion exceptions keeps trampling me down. And the documentation! Don't get me started on that.
  • ack, the perils of early morning posting :/

    nitroglycerine
  • In my mind reading (or if I could, attending) Larry's speeches is inherently cool. Why?

    I started (and continue) as a programmer in order to a:stretch my mind, and b:have a laugh. Larry does both very well.

    Larry's language is the one I have found that gives me the best ability to write tight, efficient, outright sexy code, and maybe embed an in-joke in it as well, that I have found in any language.

    I'm sorry, the man is a legend.

  • I'd like to check Ted's paper, supposedly at http://odin.bio.sunysb.edu/~tshieh/soft ware [sunysb.edu] but it looks like he may have graduated... At least no sign of his work is on odin, and he's not mentioned on the SUNY sites.

    Any ideas on where to find his work?
  • Most of that "new" code is y2k bug fixes ;)

    Anonymous Coward, get it? :)
  • You might be surprised.

    I run a website for a chemistry learning center and use Perl for just about everything. It's not all chemistry related- much of it is fairly generic, but I've written lots of snippets of Perl to do things like generate Chime images of atomic orbitals.

    Eric

  • Hey, I love canada... J
  • LizardKing said:
    Most of the code behind the unravelling of DNA is written in Perl. And they even make it freelly available ...

    Sure, that's the bioperl effort, as well as some related projects. You can even see some of my contributions at bioperl.org [bioperl.org]. However, that's bioinformatics and not chemistry.

    I've yet to see Perl used intensively for building chemical compounds, or doing molecular dynamics simulations, or doing substructure searches, or visualizing 3D structures. I have seen Python and Tcl code for those tasks.

    To repeat myself, Perl is used a lot in bioinformatics, but rarely in chemistry.

  • mirror ahoy.
  • Hey check out gotperl.com [gotperl.com] for a review and log of the conference, including stuff about Larry, Tom, and Randal...
  • The great thing about Perl is that it seems carefully crafted to allow you to do a specific set of tasks-- text proccessing & CGI scripts mostly-- and to do those tasks with a minimum of effort by the coders. After attempting to do this sort of thing in c, Perl was a giant relief. Operations that can take a dozen lines of c can be done with a single Perl command. And the scalar datatypes, string interpolation, built in regular expressions, and lots of syntactic sugar saves the hassles normally asociate with a simple task like reading a line of text, parsing it, and writing it out to a file. For what it does, Perl is awesome!
  • Why is he getting so defensive about Python? Why trot out statistics about how few jobs there are for Python programmers? After all, if Perl is superior technically, and obviously far more in demand, why does Python even warrant a mention in the company of such a language as Perl?

    Perhaps it's the clean, logical syntax that lets you learn the language in a day. Maybe it's the strong OO features. It could be the easy C integration. Possibly it's JPython, the Java Python interpreter which lets you execute Python in a browser without plugins, with full access to the Java API. Could it be the easy readability which has led to the nickname "Executable Pseudocode", letting even a non-Python programmer understand a Python program with ease? It is all of these things, and much more. Python is a fantastic language and just because Larry says that you can't get a job programming in Python doesn't mean that you shouldn't check it out. http://www.python.org.
  • COBOL will be around for a long, long, time. It has one redeeming feature that few other languages have and that is that it handles money well. Businesses don't like to entrust their finances to languages that round off, truncate, and set arbitrary precision limits based on the word size of a particular computer. Decimal arithmetic is the only way to handle money.
  • Perl also can act as a fairly effective system programming language. While I would not recomend writing a kernel in perl :), it certainly makes network programming much easier.
  • Well exactly! I'm not proud to say this, but I've spent the better part of my career (13+ years) writing COBOL. Its not the best language in the world for every application, but I shudder at the idea of converting and supporting the 2 million+ lines of code we have in our back-end mainframe legacy system to C or any other language for that matter.

    Inertia. Plain and simple. Our company has a client-server, C++, OO Open System platform billing system which is intended to replace our legacy systems. Guess what? Can't handle the millions of accounts that out mainframe systems can, and it can't keep up with the new features that are being deployed in the existing systems. Sure, in time they'll catch up in scalability and feature set, but it won't be in the next 12 months, I bet.

    True, all the new systems are being developed without COBOL. This is for obvious reasons. This doesn't mean that COBOL is going away at the end of next year when the Y2K repair work is finished. It just means that there won't be many *new* projects using COBOL. There will still be like 80% of the existing business DP systems running legacy code that won't be replaced for years to come.

    In a perfect world, I would love to be rid of COBOL. I just ain't necessarily so!
  • Ya...if you look closely, you will see a picture of me. I am the "canuck" with the empty beermug with a keg to my rear.

    ....great white north...sheesh :p
  • I didn't mind the speech as much as I minded the shitty smelling candle he lit....uggghh.
  • edremy said
    You might be surprised.

    I run a website for a chemistry learning center and use Perl for just about everything.

    I don't mean this as a put-down, but that's not really chemistry. How would you load one of your structures and measure, say, a dihedral angle? It is doable in Perl (I've done it) but you'll have to write your own code because no one has distributed a package for doing it.

    Compare that to Tcl, where I can name several programs which let you do that, and the same for Python.

    Or how about doing some molecular dynamics (MD) on it. I've seen two different Python programs which do MD, but none written in Perl.

    I could list a dozen other chemical research related tasks (compute a molecular surface, identify salts in a compound, find the maximum common substructure between two chemicals, parse a SMILES string, read a mol2 file, determine connectivity, and more). I've never seen a Perl program available which can do these, even with extensions written in C/C++. I have seen various of these in both Tcl and Python.

    It isn't that Perl cannot be used for these tasks, but I believe strongly that Perl is not very suitable to chemistry work. Although negative proofs are tricky, I use as evidence the relative paucity of Perl package for doing chemistry, compared to other languages.

    There are more chemistry programs which implement their own language from scratch than use Perl!

    Now, Perl is often used to drive these programs in a rather loose fashion, and glue them with other systems, as you have done with your site, but this is not the same as doing chemistry with Perl.

    P.S. I didn't know that Chime could do atomic orbitals; RasMol, from which it is based, cannot, and I don't see anything at mdli.com or the umass site describing the feature or even suggesting it. Do you mean VdW spheres, or if not, could you point me to a description of it? Thanks!

  • a) Yes, the ORA Python book is pretty bad. Particularly its organization. If you want to learn Python, I think that the tutorial that is part of the Python documentation is pretty good.

    b) Python has performance similar to Perl. If you are having trouble with performance in Python, it is very easy to profile the program and rewrite a couple of functions in C for speed. If Perl is running faster than your C, you must be using bad string libraries or something.

    c) Also, I've not seen much Monty Python stuff except for the name of course, but it doesn't really bother me either.
  • Are you joking? What do you think is better, Visual Basic? I find the documentation to be quite good, depending on the author of course. As for the syntax, maybe you should learn English better, then maybe Perl would be easier to grasp.
  • While python may be a good language, some of us find it easier to write Perl than Psuedo-code. After a while, you start to visualize problems in Perl | C | Java. Maybe python is better suited to the clueless CS grads universities are churning out as of late, but not me.
  • What is it you like? Our charming snow homes, or the dog-propelled taxi cabs in Metro-Vancouver?

    *snort*
  • I love Quebec :) ha.... J
  • Why use CGI when you have mod_php?

    /mill
  • I think Larry Wall made a slight chemical mistake there. I quote:

    That's TNT, trinitrotoluene, frequently confused with dynamite. But it takes a detonator to get TNT to explode. You can take pure TNT and hit it with a hammer, and nothing will happen. Don't try this with dynamite. It will ruin your day, if not your hammer.

    Dynamite is TNT soaked into a special kind of clay (I cant spell the name, it sounds german like "keiselghur" or something), TNT itself is very unstable.

  • I personally prefer Python for most things, but right at the moment I'm getting paid (lavishly) to write stuff in ActiveState's port of Perl to Windows (bletch). It's actually not that bad, but the language to my eyes is terrible---full of inconsistencies. However, this is an artifact of how Perl has evolved---as Larry Wall said, "Whatever you're looking for, Perl's got it, unless you're looking for consistency." The nice thing about Perl is you can do anything in it any way you want---"there's more than one way to do it". The nice thing about Python is that you can do anything in it and it's usually easy to see the right way of doing it. Python code is an order of magnitude easier to maintain than Perl code, but for many applications (such as text processing, where Perl really shines) the equivalent Perl program is shorter and more quickly written.

    "I want to use software that doesn't suck." - ESR
    "All software that isn't free sucks." - RMS

  • by Anonymous Coward on Monday August 30, 1999 @06:39AM (#1717010)
    It would be really nice if you thought about mirroring the document before posting the story. It's unfair to link a low-bandwidth site without a previous warning ...
    --sledge
  • Did you know that there was more NEW lines of COBOL written than any other language except C++...

    I'd be interested in seeing how well that statistic holds after the current Y2K panic has passed.

  • by rit ( 64731 ) <bwmcadams@gmaiPOLLOCKl.com minus painter> on Monday August 30, 1999 @07:00AM (#1717014) Homepage
    Oh my god! You slashdotted Larry!
    You bastards! ...
  • But it is nice to know that the end of cobol is iminent.

    As Aaaaaaanold said in the movie Conan: The Destroyer... "Lot on your knife!"

    COBOL isn't going anywhere, especially with the advent of e-commerce. Did you know that there was more NEW lines of COBOL written than any other language except C++ and the difference between those two was something like 2%? Did you know that the COBOL language has been continually updated and modernized such that it is as modern a language as nearly any other? Did you know COBOL can do OOP?

    Ok, it's been years since I've done any COBOL coding and I do most of my current stuff with perl but I still have to defend a very good language from the uninformed assaults against it. COBOL really gets a bad rap.


    ---
    "Who pill da cubby custar?"

  • That has to be the most oddball essay on a programming language I have seen recently.

    Fun, but certainly weird. Almost like he said to himself -- "Let's see. They want an hour talk on perl. How far off topic will they let me get away with? Hmm -- I have this cool program to display molecules -- how can I relate organic chemistry to perl?" It would almost make one believe that Larry Wall and Weird Al are one and the same -- or perhaps a pair of (evil?) twins.

    Which is certainly ok, because I'm weird enough to seek out Al's (music?) and Larry's writings.

    Jim
  • I worked with Larry for awhile at a small company a few years ago and yes, he is a great guy. Many of the highly talented developers that I have known can be a little difficult (or very difficult) to work with. But not Larry. Nice guy, friendy, modest, and easy to work with.



  • the end of cobol is iminent.
    Imminent? What, in about 8000 years and 4 months? :-)
  • Interestingly, there are very few people using Perl for chemistry. I know of DayPerl, used at a couple of sites, but there is also PyDaylight (which I helped write). I can't think of *any* other examples. There are some proposals in bioperl.org, but no code for chemistry.

    Most of the programs either have their own language or embed Tcl. There is a RasMol variant - which Larry Wall used to make the images -- which uses Tcl. Cerius2 (a commercial package) uses Tcl. CACTVS uses Tcl for small molecule chemistry, as does VMD for molecular visualization (which I also helped write). MMTK uses Python for biomolecular modeling. I've even seen Prolog used for one system!

    But never Perl. Perl is used a lot in bioinformatics, but rarely in chemistry.

    If you have pointers, please contact me at dalke@acm.org. One of my interests is in how people use very-high level languages for computational chemistry and biology.
  • by VAXGeek ( 3443 )
    Perl is a godly language.

    It's one of those languages that when you start, it looks REALLY syntactically clumsy, but after a while, you realize Perl is governed by a few simple conventions. They only break habit a few times. (WTF don't filehandles have little jibs in front of them, like $scalar, @array, etc?)

    I've been writing in Perl for a while, and after a while you realize how much work Larry has gone though so the rest of us bums can be lazy. Perl didn't happen by accident, folks, it was DESIGNED that way.

    Usually, most people that hate Perl call it, 'ugly' or 'gross'. They just haven't learned to realize the simplicity within the language.

    -VaxGeek
  • Did anyone actually look at the article? He is basing the "immenent death of Cobol" on a study purely based on job postings at www.dice.com

    I personally don't think that is the single, definitive source for determining the future of Programming Languages. Not to mention - it shows a very slight decline on the number of job posting in Cobol. It's not valid to say - because the deman is declining it is going to zero...

    I used COBOL for a long time - I know it very well. While I have little desire to do any more Cobol programming or maintenance in my life (althought I probably will)there is definitely a place for it and it's not going away.

    Good programmers know about "the right tool for the job". Most bad programmers I know are ones who only know one language and think that is the best solution for every problem...

    Dan
  • Well, it's really a matter of perspective. Perl kicks some SERIOUS ass for the things I use it for - system maintainence scripts (I was writing things in BASH for a few months until I tried Perl), CGI [i have yet to find a better suited language for this],and various other sundry tasks that I won't list.

    To each his own. For what it does Perl is a kickass language.

    But then again, BASIC kicked ass in it's day too.

    Doesn't mean it's any good NOW =)

    I know alot of COBOL programmers - the College i started out at had a CS program specifically geared towards "legacy application suppport". They trained the students in dated langauges like FORTRAN and COBOL - most of them left the school for $60k+ per annum jobs with companies like State Farm Insurance, supporting their ancient COBOL programs. So COBOL is still a very active language but I really haven't seen any "apps from scratch" applications of it other than in academia.

    Just my $35.
    Thoughts? comments? flames (ok i can do without the flames) ?
    -brendan
  • Most of the code behind the unravelling of DNA is written in Perl. And they even make it freelly available ...

    Chris Wareham
  • > That has to be the most oddball essay on a
    > programming language I have seen recently.

    You must not be a member of ACM's SIGPLAN. The weirdest programming language essay I've read was in Volume 33, number 12 of SIGPLAN Notices. An essay therein, "Evolution of the High Level Programming Languages", by Masud Ahmad Malik of Amman, Jordan, derided Ada as being bad for mission critical situations (precisely the domain for which Ada is well-suited). The essay was revealed in Volume 34, number 2 of Notices to be not just innacurate and fourteen years out-of-date, but also plagiarized! It prompted (relatively) angry letters from Ada advocates and an apology by the editors. *That* was a fucked-up comparative programming language essay.
  • by Anonymous Coward on Monday August 30, 1999 @09:04AM (#1717029)
    I've grabbed the text of the article and placed it here: http://www.toehold.com/mirror/onion3 /talk.html [toehold.com] I'm still working on getting the images and .au files from this poor slashdotted site. -- Kyle Hasselbacher <kyle-slash@toehold.com>
  • The O'Reilly Python book is dire, and why it's so bloody thick is beyond me. Python also performs far too badly for heavyweight usage, while Perl for all it's (many) sins is quite nippy.

    In fact, I still haven't worked out why some of my Perl code is still faster than my carefully crafted C programs that do the same thing. Maybe it's the masses of resources that the Perl interpreter chews up that give it an edge ...

    (The Monty Python fixation put me off Python as well ...)


    Chris Wareham
  • ...after the current Y2K panic has passed.

    I said NEW lines of code. This does not include any of the maintanence work being done on Y2K. This is only for brand new, never before seen projects.


    ---
    "Who pill da cubby custar?"

  • Very interesting guy with an associative memory. Kinda what I would expect from Dave Barry if he were a programmer with a chemistry background.
  • I thing Perl is great, and I think Larry Wall is one very heavy-duty hacker, but man, his speeches are we--ird. I swear, he must be high or something to come up with this stuff. It's like a CS class on acid! :-)

"What man has done, man can aspire to do." -- Jerry Pournelle, about space flight

Working...