Slashdot Mirror


Damian Conway On Programming, Perl And More

Andrew writes: "My host pair.com has an interview with Damian Conway in which he talks a lot about his upcoming modules, and what skills a Perl programmer needs. I'm personally waiting on Parse::FastDescent." Conway talks about some interesting modules he's working on, Perl 6, and on programming in general, too.

5 of 185 comments (clear)

  1. Constant Updates by katana · · Score: 5, Interesting

    Although slashdot loves to post Damian Conway stories, those who still haven't had their fill can follow his online diary at yetanother.org.

  2. Design Patterns in Perl by nwetters · · Score: 5, Interesting

    Damian mentioned design patterns as one of the skills necessary to become a better programmer. As very little has been written about implementing design patterns in Perl, I've started a project to produce Perl implementations (and explanations) of the Gang of Four's patterns. Later, I hope that Perl-specific patterns may emerge, but for the moment I'm just trying to create interest in this important area for OO-Perl programmers.

  3. An lesson in why Perl is bad for teams.... by MosesJones · · Score: 4, Interesting


    I read the article with an ever increasing sense of disbelief. Perl is definately a lanaguage for the individual rather than for groups or projects. One person on their own okay, but in a project....

    Perl lets me to program in a style that suits me, rather than enforcing a style that some language designer thought would be best for me.

    Now that is a quick way to bugger a project, everyone with their "own" style.

    Perl is multi-paradigm: I can write code that's procedural, or object-oriented, or functional, or declarative; whatever solves my problem best. I can even mix styles when the optimal solution calls for that.

    Leaving asside discussions on whether Perl is "mutli-paradigm" or indeed any language can be. This is another case of great for me, sucks on a project. You would never want to take this approach on a large project, it increases maintainance costs and learning costs for new people.

    And then of course the piece de la Resistance... the most important skill is...

    programming itself

    Let me get this straight, its CODING ? Not Design, not Engineering, requirements, risk analysis or whatever but banging the code out.

    I know this will probably get moded as "Flamebait" or whatever, but the reality is this is exactly the sort of language and approach that holds back software development and keeps us in the Dark Ages. Languages like Ada demonstrated clear advantages and had lower development and maintainance costs than C, so all new languages have their syntax based on.... C. Scripting languages have a history of producing huge amounts of unreadable and unmaintainable code.

    Why can't we just grow up and realise that this is an Engineering discipline that deserves the same respect and approach as structural, mechanical or whatever engineering. If someone said "well I like using bamboo to build bridges, I'm going to build a 6 lane highway with it" we'd laugh. This guy is talking about the same sorts of things and promoting a language that has none of the advantages of bamboo for bridge building.

    At least with people and languages like this, I'll never be unemployed, as there will always be buggered systems to fix or replace.

    Newton stood on the shoulders of giants, we fail even to build on the work of pygmies.

    --
    An Eye for an Eye will make the whole world blind - Gandhi
  4. or just maturity? by TheM0cktor · · Score: 4, Interesting

    > One thing I've noticed about Perl people is that > they are often very open-minded about using other > languages to solve a problem. I think its a result of hackishness: a common trait amongst perl programmers is to want to solve a problem in the fastest, simplest way possible and most are mature enough to admit their favourite language isn't always the right tool for the job.

  5. Re:Not a troll by scrutty · · Score: 4, Interesting
    But isn't it obvious why it doesn't work? No?


    yes - obvious as soon as I tried running it - lets see



    perl -e '@P=split//,".URRUU\c8R";@d=split//,"\nrekcah xinU / lreP rehtona tsuJ";
    sub p{@p{"r$p","u$p"}=(P,P);pipe"r$p","u$p";++$p;($q*= 2) +=$f=!fork;
    map{$P=$P[$f^ord($p{$_})&6];$p{$_}=/ ^$P/ix?$P:close$_}keys%p}p;p;p;p;p;
    map{$p{$_}=~/^[ P.]/&& close$_}%p;wait until$?;map{/^r/&&}%p;$_=$d[$q];
    sleep rand(2)if/\S/;print '

    syntax error at -e line 4, near "&&}"

    Line 4 , near "&&}" ,eh? - well "&&}" looks plain wrong anyway - grepping the code for this clause points me to the map{/^r/&&} fragment . Now && is the C-style "short-circuit" logical "and" operator - so there should be a right hand side there - lets try just losing the && altogether




    perl -e '@P=split//,".URRUU\c8R";@d=split//,"\nrekcah xinU / lreP rehtona tsuJ";
    sub p{@p{"r$p","u$p"}=(P,P);pipe"r$p","u$p";++$p;($q*= 2) +=$f=!fork;
    map{$P=$P[$f^ord($p{$_})&6];$p{$_}=/ ^$P/ix?$P:close$_}keys%p}p;p;p;p;p;
    map{$p{$_}=~/^[ P.]/&& close$_}%p;wait until$?;map{/^r/}%p;$_=$d[$q];
    sleep rand(2)if/\S/;print '



    tl hnU ei hPkaecJua/ sterrnoxr

    Ok - I get it its a JAPH - and this guy has obviously cut and pasted
    it from somewhere and something has munged his code - presumably the
    slashdot form - hmmm -if he's posting HTML and there was to be a line
    input operator pair there &lt &gt then they wouldn't display
    properly in the browser. Wonder what the filehandle name could be - well
    the only thing in scope inside that map { } block is the implicit $_
    coming from the %p elements on the RHS of the map statement - lets try
    that


    perl -e '@P=split//,".URRUU\c8R";@d=split//,"\nrekcah xinU / lreP rehtona tsuJ";
    sub p{@p{"r$p","u$p"}=(P,P);pipe"r$p","u$p";++$p;($q*= 2) +=$f=!fork;
    map{$P=$P[$f^ord($p{$_})&6];$p{$_}=/ ^$P/ix?$P:close$_}keys%p}p;p;p;p;p;
    map{$p{$_}=~/^[ P.]/&& close$_}%p;wait until$?;map{/^r/&& &lt$_&gt}%p;$_=$d[$q];
    sleep rand(2)if/\S/;print '


    Just another Perl / Unix hacker

    Each letter appearing after a certain delay - hey , thats quite cute !
    This took me lest than a minute to run debug and fix - without even
    analysing the core algorithm there - just responding to the helpful
    diagnostic messages emitted by the perl interpreter and fixing the
    obvious syntax error ( with a little lateral guesswork ). Bear in mind
    that (i)I am no perl guru , by any means and (ii) this
    is a JAPH - its supposed to be a cute obfuscated bit of code
    for people to have fun decoding and figuring out. So no, I don't
    accept your point at all - would you judge the quality of the C
    programming language based on the entries from the annual Obfuscated C
    contest. No ? I'd also wager it would take you (or me) a damn sight
    longer than two minutes to debug one of those beauties based
    on someone elses poor transcription.

    --
    -- Oh Well