SPUG: It *was* OK to speak baby Perl, but now what? [was Re: PerlWTF?]
Michael R. Wolf
MichaelRWolf at att.net
Fri Apr 9 17:31:20 PDT 2010
On Apr 9, 2010, at 2:45 PM, Andrew Sweger wrote:
> $x //= 0;
> $x-- if $x > 1;
>
> Disclaimer: The names of some scalars were changed to protect the
> innocent.
What did you change to protect the guilty?
Silliness aside, I'm getting frustrated with my own coding style. In
other words, I'm growing.
I used to allow undef to behave like zero, as documented, without
feeling the need to appease the pragma gods.
Then I grew up to "use warnings" and perlcritic(1) as guard rails .
Then I grew up and fought the restraints that were formerly called
safety devices, and became annoyed that I was serving these linguistic
structures instead of them serving me.
When I was a child Perl programmer, I print'ed as a child.
Now that I'm a growed-up Perl programmer, I 'say' as a growed-up.
Etc...
Perhaps I was too self-absorbed and well contented for a few years,
but recently I started reading about the discontent that's brewed the
likes of:
use Modern::Perl; # chromatic
use Perl5i::latest; # Schwern
use common::sense; # Mark Lehmann
And then I had this aha moment.
I don't have good coding habits.
I've got cult cargo habits.
Why am I repeating magic incantations when my language of choice
should be doing that for me? (I *am* starting to 'use Moose'. BTW -
the next issue of "The Perl Review" will be exclusively devoted to
Moose.) I have evolved. Has my language evolved to meet me?
Of course, it's not so black and white, but it got me thinking.
Thinking more than normal. Especially in this pregnant pause while we
await the gestation of Perl6.
So, my question to other Perl programmers, especially the thinking
ones, is....
How is your "software practice" (doctors and lawyers shouldn't be the
only professionals with a practice) maturing to move beyond the cargo
cult practices of your days of writing baby Perl?
Having asked the question, here's grist to start the conversation.
Here's my growing edge...
use Moose; # New for me...
use DBIx::Class; # ditto
use 5.10; # New for my client's platform...
and what's still comfortable...
use Test::More;
use warnings;
use strict;
and what's a bit beyond my comfort factor...
use Perl5i::*;
use Fatal;
use Test::Most;
use Perl6::*;
Admittedly, I'm not a bleeding edge programmer in the community, even
though I've been around it for 15 years. The bulk of my Perl work has
been in traning the next generation to move beyond Baby Perl(tm) so
that they may join the movement.
I'm really interested to hear what folks at all the levels of Perl-ish-
ness are up to in their practice: from Baby Perl Programmers to Monks.
Thanks for sharing...
--
Michael R. Wolf
All mammals learn by playing!
MichaelRWolf at att.net
More information about the spug-list
mailing list