[Date Prev][Date Next][Thread Prev][Thread Next] [Search] [Date Index] [Thread Index]

[MacPerl] Fun With Perl (new mailing list forming)

I am forming a new mailing list. If you use and enjoy Perl and wish 
to participate, please let me know. Note that this list will not be 

List particulars - this will be a private, closed subscription, 
mailing list run under majordomo. We should enjoy a minimum of spam. 
To join, send me email, or send mail to fwp-request@technofile.org 
with body "subscribe".

What, you ask, is Fun With Perl?

I'm glad you asked.

About a year ago, I started to collect little bits of Perl code that I
think are worthy of mention (or at least of saving) for some reason
("worthy" here means _I_  thought so).  Maybe they're bits that could
someday go into a Perl puzzle book or exercise article, or... maybe they're
things I would have done  differently, or... maybe they are examples of a
form that could be called "What is wrong with this picture?".  Maybe they
are just a set of examples that prove TMTOWTDI (There's More Than One 
Way To Do It).  [Sometimes they prove that just because TMTOWTDI, 
doesn't mean you _should_).

Here, for example, is one of my favorite lines from much code at my
previous company; to me, this rather epitomizes the central tenets of 
Fun With Perl

    system("date | perl -p -e 'chop' >> $timef");

no comment required here, I think... (if you want one, let me know).

In essence, "Fun With Perl" is things I think are worth mentioning to
Perlish friends I think would get a kick out of them.

I'm still collecting. And recently I ran across another collector who 
will be giving a talk at Yet Another Perl Conference this June. He 
calls his collection "Ineffective Perl Programming" (a 
deconstruction, examination and
correcting of oft abused perl idioms which just -don't work-.). I'm 
hoping to get some good examples from him.

I plan eventually to put these up on a set of web pages... who knows 
what else they could become. But if nothing else, I thought they'd be 
fun to share with like-minded Perl pholks. And maybe we can have some 
discussions. And, of course, I would love to see _your_ examples.

The more, the merrier, (the more the examples :-). So I thought I'd 
make a real mailing list and throw it open to more than just my small 
original list of Perl buddies. The list will not be moderated.  But 
there will be a listmom.  So play nice.

There will be room for pure style discussion, but generally we're 
looking for things people thought should work (but didn't), things 
they thought shouldn't work (but did), multiple ways to do it (where 
the elegant way is so obvious when seen next to the others)...

As to questions of style... for my part (and for the guidelines of 
this list), I prefer to follow Larry Wall's views on style:

   The Perl style guide says you should put the important thing on the
   left, which is another way of saying you should try to make your goal
   clearer to the reader.  I'd say that you should use map {} if your goal
   is to produce a list, and foreach if your goal is to process a list.
   It is totally useless to argue about which is better style in the
   absence of a pragmatic context.

Please feel free to send me anything you run across that qualifies as 
Fun With Perl (even if you don't join the list). If you send 
something, I'd like: the setup (what's the problem), the given 
solution, your alternate solution(s)
where applicable, any appropriate description of what's wrong or why 
this is interesting... Feel free to preserve the anonymity of the 
person or company that was responsible for the original code :-)

I hope I'll see you on Fun With Perl.

- Vicki
-- --
        |\      _,,,---,,_       Vicki Brown <vlb@cfcl.com>
  ZZZzz /,`.-'`'    -.  ;-;;,_   Journeyman Sourceror: Scripts & Philtres
       |,4-  ) )-,_. ,\ (  `'-'  P.O. Box 1269  San Bruno  CA  94066
      '---''(_/--'  `-'\_) http://www.cfcl.com/~vlb  http://www.macperl.org

===== Want to unsubscribe from this list?
===== Send mail with body "unsubscribe" to macperl-request@macperl.org