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

 



Forgot your password?
typodupeerror
×
Perl Programming

Perl Creative Daemon Contest 146

eisen writes "We are pleased to announce the Perl Creative Daemon Content sponsored by Mother of Perl, O'Reilly, Stonehenge Consulting, and Whirlwind Interactive. The First, Second, and Third place entries will win a copy of the book "Mastering Algorithms with Perl". In addition the First place entry will win $300. The Second place entry will win $200. The deadline for submitting entries is April 15th. Randal Schwartz has graciously volunteered to judge the entries. More information including contest rules are available at the contest homepage."
This discussion has been archived. No new comments can be posted.

Perl Creative Daemon Contest

Comments Filter:
  • If this contest is indeed sponsored by O'Reilly, and Whirlwind Interactive, they could have been a bit more generous. At least they could have chosen a more even sum, like $500 or $512 ;)
  • Troll. What did I do, run over your mother
    or something? Whats up with all the "MRBILL
    <x>" trolls lately?
  • A newbie to perl may want to flex his coding muscles to see if he wants what he is made of
    A little competion always made things better help

    http://theotherside.com/dvd/ [theotherside.com]
  • Oddly enough, I have no problem with Intel. I've even had them as a client of mine in the years since the arrest. See this check as proof. [stonehenge.com]

    The issue for me is not Intel's actions, but the law under which I was convicted that permitted an influential large employer in Oregon to use the public resources to handle what was essentially an internal dispute. For a good summary of what's wrong with the law, see Steven McDougall's Rant [stonehenge.com].

  • Word on the street is that there's no book out there with Schwartz's name listed on it as a co-author that he actually did the writing for.
    It's amazing how wrong the "word on the street" is, from time to time, wouldn't you say?
  • Regarding your last point, Extreme Programming, which embraces redesigning you class structure as often as necessary, seems to be primarily done in Smalltalk - you don't get much more pure OO than that.

  • I let my bosses son (a bright 7 year old) use my system when I'm away to play the video games I have installed (Mostly open source games.. stratagy etc.. he is a smart kid and I end up downloading new games for him a lot)

    I was stuck with explaining to him why I would log into his account on my computer on occasion.

    Try explainning this to a tech unsavy boss, A judge who never used Unix, a Jury who have no idea what "multiuser" means.

    I never had to deal with this. The kid understood and even if he didn't my boss would (he dose know Unix).

    Given that such a simple task as installing games for a kid could be missunderstood picture the kind of pain that comes from an admin who made someone mad.

    Instead of punishing victoms of ignorence we should instead insist on tech savy in managers.
  • And.......

    What does this have to do with the contest?

    Warn me about what? Are you frightened that he will use the submissions for some evil plot?

    Or, becuase you have some grudge against him, and your just using this opportune time to feebly shoot down one of the must well respected men in the hacker community.

    I wonder Mr. AC; what's you motive?


    -slams
  • Comment removed based on user account deletion
  • by sgtron ( 35704 )
    How about getting together a slashdot team?
  • no man, i figured we could all split the 300 bucks and maybe share the book. you get chapter one, i'll take chapter two.. what with the prizes being so extravagant and all, i'm surprised no one wants to form teams...
  • what points did you make? you testified to the defendant's character.

    There is no defendant. This is a Slashdot discussion not a trial.

    Ted Bundy had people testify to his character, also. I'm not trying to compare the defendant to a mass murderer

    That's funny, you certainly did so. Why?

    His intentions may have been altruistic, but as an experience worker he should have had the common sense to bring his superiors in on his little experiments.

    Agreed. Good, glad we got that out of the way. Now, please feel free to contribute to the contest, or don't. But, if you have some problem with Randal being a judge on the contest, try bringing up a new, and pertinent point.
  • Python's encapsulation is iffy, at best. Although there are __private__ variables and functions, they are just mangled, and can be accessed from outside.
  • he was convicted of illegally breaking into Intel's computers while he worked as a consultant for them.

    I'll wager all of Randall's Linux boxen boast "AMD Inside". :-)

  • No, he was right the first time. Monads are a technique for handling I/O in functional languages (since I/O is an imperative task). Check out chapter 18 of Simon Thompson's "Haskell: The Craft of Functional Programming" for more info. In turn, it references "Advanced Functional Programming" by Jeuring and Meijer.
  • Although i'm not good enough with Perl to write something like this, a cool daemon could be one that goes crazy at hte user if they type in a swear word at any time! bahaha

    Mike Roberto
    - roberto@soul.apk.net
    -- AOL IM: MicroBerto
  • Cool post, but I disagree with:
    The proof of the above paragraph is simply the computer you are sitting in front of. Your operating system is not a tangled mass of spaghetti code because oop provides encapsulation (or individual ants) to prevent that.
    My operating system is mostly written in plain old procedural C. Is any production OS actually written in OO code? How many years does it take to `ls`?

    I think you are presenting a false dichotomy of 'spaghetti code' vs. 'OO'. The majority of code is neither - it is relatively clean, structured procedural code. In other words, large tasks are decomposed into smaller tasks (recursively) until small, understandable functions are reached. No encapsulation needed.

    Spaghetti code is code that uses a lot of GOTO's (or jumps) - typically written in BASIC or assembler. Structured code can be viewed as a hierarchy of black boxes with defined inputs and outputs; spaghetti code cannot. The transition to structured code took place (mostly) long before OO.

  • Your post shows how either a)you're a moron or b) you're really devoid of any compassion. If he broke the law then so what if he's already served his time? He deserves to be treated like a human being again. Once they've done the time then forgive the crime.
  • Oh please. Perl coding in a collective environment. Perl is an art form, expression.

    If you want to forma team, lets all come over to your house and get our uniforms on, I want to be #16 thats my favorite. Also who will bring the chips? I;ll bring the squeezy drinks and the popcorn. Shoudl I bring my pillow ? Will it be a sleepover? If so I have to ask my parents permission. Are your parents goint to be home? I hope so because my parents would never let me stay if there wasn't supervision.

    Oh never mind, I can't join your team, I have band camp tomorrow and after that I have to get my braces adjusted.

    Sorry.

  • Oh yeah well would you have a Perl program tatooed on your chest? Rofl now youd be a true geek if you could do that :-) Id worship you

  • Well I had a great idea until I saw "must work in unix" I was going to write the doze registry daemon. Goes to the background and every like 5 minutes deletes a registry key! Imagine the fun you can have! lol.

  • I wonder if O'Reilly considers themself (the collective self that is...) a "Sponser" or a "Sponsor"?
  • I hope that Python or something like it simplify's things in the mid future. Surprising [python.org] to see a couple of the names on this list (NASA?! Mission Control?!), this gives me reassurance that Python will at least exist for 5 more years (Government is slow to change decisions already made). DARPA is funding the whole shebang for Python. It was accepted under this [python.org] proposal called - Computer Programming for Everyone. Python is so open because Mr. Guido van Rossum has left it unrestricted attempting to help it gain acceptance. Van Rossum believes in what he's doing, he's one of the (few) people I admire and respect in terms of integrity alone. CP4E aims to establish Python (Or an improved version of it, or something completely different later on - whatever is best) as the primary language taught to our children in school. I admire this goal and I believe as GvR seems to that this new form of "literacy" will reap untold rewards.
    These are my opinions, please do not construe anything I say as a statement of Mr. Van Rossum's. If in doubt email him, he does answer all his email (patience though - you never know how many emails he has on his plate at any given moment).
    The Night Angel
  • But if Anonymous Cowards always lie and you are an Anonymous coward then your telling the truth.. but Anonymous Cowards always lie...
  • Your right when you state that the best languages are multi-paradigm. Just because I learned the word "paradigm" doesn't mean I have to forget "different way of thinking" even if my signal-to-noise ratio is higher. Python is multi-paradigm. It has a complete object model but it is not enforced - you can program it simple batch (script other code), pre-procedurally, procedurally, object wise, or hybrids of all.
    Python is not strict. it doesn't force you to enter fifteen lines to define an object that tells STOUT "Hello World" - you simply enter print "Hello World" as you would in a pre-procedural language (Early Basic's, primitive subroutine support; no support for local variables the norm). If you choose to use them however, objects are there - for that moment when you need to express a subtle nuance that just isn't the same without them. I believe in the right tool for the job, and Python is a darn good swiss army knife.
    C++ objects suck crap. The only reason it has accomplished anything is through the intelligence of the programmers using it. If it is brittle - your not encapsulating it; if it is not encapsulated - it cannot be object based. Please do not confuse a bad implementation with a bad idea, the world is still recovering from C++'s poisoning the well.
    Your right to an extent when you say people are pattern based, but if your going to say that Perl's extension of grep's regular expression matching can contain me then I'll slap you upside the head with a large trout (We'll have to meet in IRC though =). I am more than patterns, I'm structured patterns at the least. Until a working machine intelligence is demonstrated to the world at large then nobody can pretend to know the basis of the homunculi (or those little fragments of personality that when fractally combined form a deep and responsive system - intentionally too much noise ;).
    I don't know what else to say. You have me stumped, if you don't believe objects are a good thing I must simply assume you need someone to help you go back over the territory to find the supporting knowledge that you missed. But then again you simply may not need objects for the work you currently do - in that case Python will let you program procedurally.

    Sincerely,
    The Night Angel
  • Well darn. I stand corrected, thank you for clearing it up =)
  • Yeah your right, Java is more limited that Python but the comparison wasn't meant to be taken completely literally =)
    I couldn't find parametric polymorphism on a quick seach of Python's site (Using InfoSeek's search written in Python ;) I'll try to find it in the next few days, if it isn't there I guess I'll have to petition it for 1.6 (or add it to my own local source ;), I would like to add my objects together.
    In Python everything including functions are first order types. Allows for some neat aliasing and extending that idea, truely generic routines that can be applied to any data (even code ;).
    What do you think about simplicity though? Every once in a while I do believe we need to collapse everything we know so that we can begin to explore with a solid footing again. Do you think Python (or Perl!) does this?
    The Night Angel
  • From the message I was replying to:
    "I think you are presenting a false dichotomy of 'spaghetti code' vs. 'OO'. The majority of code is neither - it is relatively clean, structured procedural code. In other words, large tasks are decomposed into smaller tasks (recursively) until small, understandable functions are reached. No encapsulation needed.
    Spaghetti code is code that uses a lot of GOTO's (or jumps) - typically written in BASIC or assembler. Structured code can be viewed as a hierarchy of black boxes with defined inputs and outputs; spaghetti code cannot. The transition to structured code took place (mostly) long before OO.
    "
    The context of the message implies that the programmer is extending the language through ideas a programmer uses while programming, I read the above description and I see an object hierarchy with encapsulated modules within it. The language and the compiler do not enforce this - the programmer does. Outside of this context what I said begins to lose sense.
    I have my own experience doing this, on my old Amiga, using a language called AMOS I programmed a GUI. AMOS was a dialect of basic with some nice (for the time) graphic extensions. All the code for my GUI was written in a procedural langauage, but all the logic & data were object based. I wrote a minidatabase for the GUI to use which stored qualitive data - it had routines to pack itself to disk and rebuild from the same that does in effect what serializing does in Java and pickling does in Python.
    The Night Angel
  • And pass the gravy.
    The Night Angel.
  • Oops =) Please accept my apologies, "crazy category theory and monads..", Category theory send me down the wrong branches and I arrived at monods first.
  • I see where you're coming from but I still stand by my original post. Heh, my first home computer was a Commodore 64 and assembly (high level logic circuits =) was my first language. Your absolutely right when you say C is not object orientated, but consider encapsulation as an idea not as a design feature, I assert that black box == encapsulated.
  • You leave me no choice but to respect that. =)
    The Night Angel
  • Software Carpentry [codesourcery.com] is running a contest with $200000 in prizes to be given away. Of course the final product will be coded in Python but that doesn't mean you can't prototype in Perl (although in a close match...).
    Heh, I see a ton of Perl vs Python articles, it amazes me how people can completely miss the point. Research Python a bit. Research Java a bit. Python is a more flexible Java. Python's support librarys are inherited from too many open source projects to mention. Java has a ton of Sun proprietary standard extensions. Plus hopefully the one you want coming soon =) Sorry to be a bit off topic here, but go check out the above site for the money, the tools they want to develop will benefit the entire open source community regardless of language.
    And of course if you want to check out Python, go here [python.org].
  • OK, before this would scare me off, I'd need to know if it's true (postings by Anonymous Coward are not really confidence-inspiring) and if he's served time and of what crime was he convicted.

    If he's served his time, then his record is completely irrelevant. It might be irrelevant in any event but I haven't finished baking my ethics on that one...

  • WOW $300!!!!

    THAT SURE IS SOME GREAT PRIZE!!!

  • Just use the Elza (a great new interpreter written in Perl being able to mimic browser behaviour almost perfectly): http://phiphi.hypermart.net/elza-entry. html [hypermart.net].
    I am sure you can write a small script which posts here in 5 minutes ;-)

    ... and don't forget to tell your friends!

  • I had the same problems when having the idea to write an email-2-sms gateway: Writing the sms-sending script in perl wasn't worth the effort (considering the frequency free-sms-services shut down in my country). So when I heard of the Elza I knew the tool I had always searched for was born. 2 hours later I looked at my shiny new email2sms gateway which is now easily adjustable to new services. Post here if you have questions about implementing this.

    Funnily, the Elza isn't known very well among the people which would find it useful. (It has only some name in security circles since it has been mentioned somewhere at securityfocus [securityfocus.com].)

    My suggestion: Someone should post a story about the Elza here to spread the word. Any volunteers ;-) ?

  • "Even though these United States detain the world's largest death row population-Even though these United States lead the industrialized world in numbers of people incarcerated, in total expenditures for prison construction, prison Maintenance, and prison personnel-Even though these United States maintain a more aggressive and growing commitment to the imprisonment of their citizens than to public education of their peoples, he must not die. "Even though close to seventy percent of America's prisoners are people of color - Even though more than ninety percent of those on death row are poor-He must not die. And the state cannot take retract what it has never conferred - The state cannot kill this man. He must not die. "As he still lives, a black man sentenced to death among so many millions of his brothers and sisters sentenced to penury, contempt, and tragic short circuitries of choice and aspiration -- As he still lives so he ennobles the rest of us to deepen, enlarge, and improve our political opposition to a state gone mad with greed and the pathologies of uncontested supremacist might. We begin here, where we can win. We can do this. We can keep him alive. He must not die."
  • Yup. I was picking on Java. Python is almost nearly the perfect language, although Perl has an implicit advantage in having so many people and packages already developed.

    Let's take a trip back in time to the Bad Old Perl Four days... perl has no modules, it does have includes, and there is a modest set of useful things allready written up for you to include. Python has modules, and pre-parsed token files, and thousands (well, 100s) of pre-written modules for useful things, most of which Perl doesn't.

    (I had to learn a lot of Python to work on a Civ I clone written in Python and CLIPS, I'm pretty sure Python was chose rather then Perl because Python had usable X and Xt and Xaw modules. Perl had a little-known X lib, but it was little more then the X wire protocall, lower level then C's Xlib!)

    Will python reach this level of adoption? Lets hope so.

    I'm guessing not. After all Python was once ahead of Perl, and lost the lead. But who knows. After all Python is a pretty nice language.

  • he was convicted of illegally breaking into Intel's computers while he worked as a consultant for them.
    No. Read the charges more carefully.
    He placed software on computers to snag passwords as users logged on. He kept a record of these recorded passwords and fraudently logged in as these people.
    No. Read the charges more carefully.
    When he was busted he admitted his guilt but said he wasn't trying to do anything illegal.
    No. Read the charges and police reports more carefully.
    Randal has a history of placing backdoor's into computer systems so he can "explore".
    That statement is not supported in any court record, and borders on libel. Watch yourself.
  • I would have compassion if Schwartz would admit his guilt. To this day he has conspired with his cronies to paint Intel as engaging in some sort of witch hunt. I have no compassions for criminals who do not show remorse for their actions.
    I have given roughly two dozen presentations of a 90 minute talk I title Just another convicted Perl hacker at conferences and groups across the US. At this talk, I describe exactly what I did, what mistakes I made, what I'm sorry about, and try to give some advice about how to have my peers not fall into the same trap set up by overzealous legislators and special interest groups. I make it clear that I don't view Intel as "evil". I do paint the laws under which I was convicted as constitutionally overbroad and vague, and while I have personal digust with the hair-trigger reaction of some of the Intel executives, I can fully understand their responsibility to Intel shareholders, and appreciate their actions from that perspective.

    I also don't have an "anti-Intel" agenda. See another post I made to this thread to see how Intel is still a client of mine! If some of my supporters have an "anti-Intel" agenda, it's not from my encouragement.

  • So you'd have no problem hiring a sicko like Patrick Naughton or a racist criminal like Al Sharpton or the KKK member recently released after vandalizing a synagogue?

    Once they've done their time, including probation, the government has no business messing with them anymore. However, if you as a person have no problem associating with the likes of them, I think you'll find that a lot of people would have problems associating with you and your questionable ethics.

    Cheers,
    ZicoKnows@hotmail.com

  • He's a murderer who hasn't even claimed not to have been involved in his crime. Lucky for him, he has an army of clueless, white, suburban liberal kiddies (who of course feel guilty for having been born into the oh-so-oppressive white race) fighting his battles for him. I can't wait 'til they pull the switch on that street thug.

    Cheers,
    ZicoKnows@hotmail.com

  • Just go to http://corvin.spb.ru/ [corvin.spb.ru] and you can download the entire Perl CD Bookshelf (as well as the Web Developer Library and Java Reference Library) from O'Reilly for free. Of course, O'Reilly charges around $60 for each of these, but hey, the guys running the site are Open Source, Linux, and Slashdot groupies, and we all know how altruistic and giving such types are, so I'm sure they're just doing it for the good of the community. Information wants to be free, right?Judging by the large number of similar sites out there, I guess it really does.

    Then again, maybe things like this are why O'Reilly's is putting up only 300 bucks for the winner. :)

    Cheers,
    ZicoKnows@hotmail.com

    • Author of the JAPH scripts.
    • Author of the original chat2.pl
    • Author of Learning Perl
    • Co-author of Programming Perl
    • Co-founder of The Perl Institute (to whom I donated the perl.org domain)
    • Instructor
    • The items listed on CPAN [perl.com].


    Give up on this replying-to-yourself thing. It just makes you look bad.
  • Ok, for starters, clearly you didn't read comp.lang.perl in the old days (when there was such a group). The JAPHs were Randal's way of demonstrating whatever feature he was explainging in the message. They were wonderful ways to see concrete examples of how Perl features worked. For those of us who learned perl at version 3, Randal and his JAPHs were a huge help.

    Second, chat2.pl may seem like a mess, now, but I dare you to write something as efficient that does the same thing IN PERL VERSION 4! You couldn't just write C library, you didn't have references or anonymous anything, no objects, no lexical scope. Perl was primitive back then and chat2 was about as clean as a complex module like that could get. Once Perl version 5 came along chat2.pl was obsoleted by cleaner interfaces, not because there were better programmers, but because there were better LANGUAGE FEATURES.

    As for his CPAN credits, Randal doesn't generally write modules. He's a trainer. I've participated in numerous conversations with him where he has fixed someone else code, or shown them how to do it themselves, and I can attest that he's not just good. He's worthy of being one of the Perl trinity.

    You note that Larry Wall wrote Programming Perl. Go look at the 2nd edition. It's co-authored by Randal, Tom and Larry.

    Now, Randal's technical credits asside, this thread was about how we should all boycott this contest purely because the person judging it has a conviction is his past. If you feel that strongly about people who have served their time, then perhaps you should stop ranting on Slashdot and go run for office. Your platform can be: "Never forgive the guilty: Life for 'em all!" I suspect there will even be a few takers. Not me, but then everyone's allowed an opinion. Just stop following up to your own Slashdot posts.
  • Anonymous Coward said, "I'll probably never be able to get another corporate job again." First sign that this guy is a little unstable (if replying to his own posts wasn't enough). The old, they're-out-to-get-me.

    Then, "I was carrying a gun after being surrounded by a group of them brandishing baseball bats"

    Wow. That's good, I like that part. What has this to do with Randal?

    "don't you fucking tell me about duty and what anyone owes their employers."

    Why not? I have strong feelings on the matter, and clearly so do you. I respect your right to say what you like on the topic, but please consider not ordering others around. It doesn't work very well as a debate tactic.

    Randal felt he had a duty, and he executed that duty in a way that was questionable. That does not change the fact that he is qualified to judge the contest in question.
    1. Stay with the context, son. We're talking about a SunOS system circa mid 90's. /etc/shadow was OPTIONAL. /etc/passwd would have likely contained the passwords (DES hashed, of course).
    2. What do you mean the poster did not know what grep does. He used the phrase "grepped the password file". Being an author of several versions of grep (including the only one that I'm aware of in Perl), I would use the same phrase (password, if I was being generic and passwd if I was refering to /etc/passwd).
    3. Randal did what many of us did. He logged into a machine in a department that he used to work with in order to verify that his security recommendations were being followed. I've done it. He did it. He got "caught" by people without a clue. In the end, had he not been stopped, he would have alerted them to potentially serious security problems (which he had advised them about previously when he had been in that department).
    Give it a rest, Randal is one of the most upstanding folks on the Net. He just fell afoul of some bad assumptions WRT corporate culture meets UNIX culture, and paid the price for it.

    The thing that I took away from the Randal incident was that you can't trust your employer to trust you. You have to be every bit as paranoid about them as they *could* be of you and that has, of course, hurt my job performance since. Sigh.
  • This (bashing of Randal) is almost certainly a troll,...

    why, because it differs from your opinions of the matter?
    No, because a) it's off topic b) it's not supported by any real evidence that what he did was not standard business practice for those of us who were in his industry at the time and c) you don't cite any external material.

    Randal is well known as one of the most selfless members of the Perl community. He spent years helping others on USENET for NO PAY. He's the author of one of the most respected introductory language texts in existance. I say this, not to appologize for his actions, but to demonstrate the truth of his central claim in the case: he did what he did because it was in his basic nature to try to help others, and it never occured to him that that help would be mis-interpreted. And what's more, his actions in the case in question were exactly how a lot of us were dealing with security probelms at work at the time.

    I know that I did exactly what Randal did. He was "found out" before he could report his findings. I managed to get info to the admins in that department before that happened. Neither of us thought twice about it. We were just doing the right thing for the people who depended on technology that they didn't understand. I would have been stunned if anyone had been upset by what I did. When I heard about Randal, I almost threw up. It was just stupid, and it scared me. Today, I'm much less productive, because I don't take chances. Of course, I really don't have this problem NOW, because all of the company's production hardware is my domain. I don't have to answer to anyone about logging into/examining security on any of the systems.
  • You're supposed to submit your entry as "a MIME attachment". So, it counts if I submit a 1280x1024 scanned JPEG of the source, right? ;-)

    Actually, I am going to enter. I have a plan that will either get a quick chuckle or win the prize... we'll see.
  • I note that you responded to none of the points that I made. Far from being objective....

    Please troll someone else's reputation. Randal has too much history of being honorable and helpful to be harmed by your rants.
  • Replying to your own post.... getting desperate are we?

    You're preaching the sins of wearing blue to the police, in this case. We've all done what Randal did in the line of what we were told was our duty. Intel flipped when they realized that a) he could circumvent security and b) he did so in order to fix it. In the end, if you haven't had to break into a box to fix something at work, I assume you're not much of a sysadmin.

    How can you feel "dirty" for having learned Perl from someone who risks jail time over helping his employer?
  • I'm not perl guru, but I'd say the loosers like me would get a lot more out of a good perl book than the winners. :) Lets start a free books for the loosers movement. Sheldon
  • they could have been a bit more generous.
    First you should be in it for the honour :-) Second, think of how much your market value will rise if your new boss sees this on your resume. (Untill he found out that you did this during worktime and that is the reason you're looking for a new job :-)
  • I disagree. What Randall did was as qrong as you can get. As for the reference to 1/2 the open source liminaries, I also disagree. Randall did a lot more than most, frankly I feel he got off ver easy. Theft is theft, plain and simple, in my view I place in the same punk kid catagory as Mitnick. I think the guys is a disgrace and the assumption that "Everyone does it, he just got caught" is incorrect, everyone does not hijack passwords, break into corporate systems or steal.
  • I certainly hope CP4E takes off. I really don't want to see a closed, proprietary, and dare I say dumb language like Java become too entrenched in education.

    An educational language should come with source - otherwise, I really don't see its usefulness as an education tool. Part of a language is its implementation - students need to be able to poke under the hood.

    As it stands, the current pro-Java movement in education has been undertaken by profs who have fallen victim to Java hype. They have turned their classrooms into Sun training centers, and in turn are cheating their students out of a full programming education, which must include detailed research of the tools they are using.

  • I assert that black box == encapsulated.

    Your assertion is incorrect. Encapsulation is about providing an interface that you can enforce. C++, Python and Java do enforce encapsulation - C and Perl do not. Even Perl's OO allows you to look at any variable in any package you wish to - there is no concept of hidden variables (although I don't know if the our keyword in 5.6 addresses this).

  • Python is multi-paradigm.

    Yup. I was picking on Java. Python is almost nearly the perfect language, although Perl has an implicit advantage in having so many people and packages already developed.

    A trip through CPAN will show you the real power of a language is in libraries and packages - once you can literally download packages to solve nearly any problem you will reasonably encounter, syntax issues aren't a huge deal.

    Will python reach this level of adoption? Lets hope so.

  • Extreme Programming, which embraces redesigning you class structure as often as necessary, seems to be primarily done in Smalltalk

    XP is a group of practices, not a coding methodology per se. It really has nothing to do with any particular language, and if memory serves correct, Kent never endorses on language over another.

  • What do you think about simplicity though? Every once in a while I do believe we need to collapse everything we know so that we can begin to explore with a solid footing again.

    First of all, salutations for staying level-headed throughout this language debate. Its a rarity on /.

    For straight-up simplicity I find that you can reach a zen-like state in Haskell, although you have to work hard, really hard to get there (I can't see I held that state for too long).

    I really think functional programming would take off if we were all just more intelligent and maybe better educated.

    Perl seems to just accept that we're all basically dumb, which is how I like it.

  • The fact people continue to drink the OO koolaid after twenty years of unfortunate implementations, mangled libraries, and martyred projects, simply amazes me.

    Yes, it looks good on paper. So does ML. That doens't mean it stands up very well to daily mangling, constant hacking, and continuous rework. Thats why perl and C are popular - they don't force a strict paradigm on you (all truly useful languages are multi-paradigm). Perl in particular maps very well to the psychology of human programmers - human think in terms of patterns, and perl is literally a pattern detection language.

    Yet, people still continue to sniff the glue. Right now, out there, someone is using Rational Rose to construct a highly convoluted object hierarchy, mixing in as much Rumbaugh/Jacobson/Booch mumbo-jumbo as possible.

    Then they'll implement and test. Chances are they'll find their model extremely brittle...the moment the first requirement change breaks their cute little hierarchy, they'll understand how they've been suckered.

  • The proof of the above paragraph is simply the computer you are sitting in front of. Your operating system is not a tangled mass of spaghetti code because oop provides encapsulation (or individual ants) to prevent that.

    There are no popular operating systems built with OO tools. Your conjecture is false.

    As to how it all relates to Java, well... At the core of both languages is a strong object model

    Java does not have a strong object model. It offers neither functions as first order types, parametric polymorphism, or even simple consistency. There is no ability to circumvent polymorphism and the overhead incurred - the virtual keyword is assumed. Java is OO for idiots.

    The Borg in Python is in how it's modules interact with other software.

    Pelr talks as many protocols as python and more. By the way, this has nothing to do with OO at all in any case.

    This means that the programmer can access and use a very large base of existing code

    CPAN has at least ten times as many packages for perl as any other competing service for any other language. Its not even close.

    I wish I had made it further into my Perl evaluation, but it is too obtuse for me

    Oh I am so sick of hearing this. Its not sanskrit for God's sake - just open Programming Perl and start reading. If a twelve year old can do it (and many have), you can too.

  • by Anonymous Coward on Saturday March 18, 2000 @02:11PM (#1193216)
    here's some info [mids.org] on the case.
  • by 348 ( 124012 ) on Saturday March 18, 2000 @03:57PM (#1193217) Homepage
    # load required modules
    use strict;
    use POSIX qw(setsid);
    use LWP::Simple;
    # set costants
    my $URL = 'http://www.slashdot.org/';
    my $FILE = '/tmp/firstpostbaby.html';
    # flush the buffer
    $| = 1;
    # daemonize the program
    &daemonize;
    # first post infinite loop
    while(1) {
    # mirror the file
    mirror($URL,$FILE);
    # wait for 20 seconds
    sleep(20);
    }
    sub daemonize {
    chdir '/' or die "Can't chdir to /: $!";
    open STDIN, '/dev/null' or die "Can't read /dev/null: $!FIRST POST;;
    open STDOUT, '>>/dev/null' or die "Can't write to /dev/null: $!FISRT POST;;
    open STDERR, '>>/dev/null' or die "Can't write to /dev/null: $!NOFIRSTPOST;;
    defined(my $pid = fork) or die "Can't fork: $!";
    exit if $pid;
    setsid or die "Can't get a first post, start a new session: $!";
    umask 0;
    }
  • by Mr. Piccolo ( 18045 ) on Saturday March 18, 2000 @02:05PM (#1193218) Homepage
    Think about it. If the winner writes the most creative daemon on the planet, what does he/she need a book about mastering algorithms for?

    At least money is involved, so the prize isn't _all_ useless... ;-)
  • by crucini ( 98210 ) on Saturday March 18, 2000 @05:39PM (#1193219)
    This (bashing of Randal) is almost certainly a troll, but I'll reply for the benefit of those who don't already know. Randal was convicted of three felony counts for performing tasks that essentially fell within his professional scope as sysadmin. Read the whole story. [lightlink.com] It's worth learning about, because many people who work with computers are in danger of similar prosecution if they piss off the wrong person. So before you condemn Randal, answer this: have you ever accessed a corporate information resource without explicit authorization? If you say no, and you work in a large, heterogeneous corporate environment, I can rest assured that you don't get much accomplished. If you say yes, you are confessing to the crux of the charges against Randal. The real problem here is that the average person (judge, juror) has so little understanding of how computers work that many innocent actions can be portrayed as criminal. Ever grepped a password file? Now picture how that could sound in court. Anyway, if someone has a serious reason to disbelieve Randal's side of the story, please post it or a link to it. In the 4+ years since the conviction, I haven't seen any.

If you want to put yourself on the map, publish your own map.

Working...