Beefy Boxes and Bandwidth Generously Provided by pair Networks
Perl: the Markov chain saw
 
PerlMonks  

Re: Style, style, style

by dreadpiratepeter (Priest)
on Sep 08, 2002 at 02:31 UTC ( [id://195962]=note: print w/replies, xml ) Need Help??


in reply to Style, style, style

Here goes:

while (<>) { ... } or while (my $line = <>) { ... }?
In general, in any non trivial situation, I use the latter because is is safer and makes for self-documenting code (assuming that you use an appropriate variable).

sub CONSTANT () { ... } or use constant CONSTANT => ...;?
Once again the later, to promote self-documenting code.

my ($foo, $bar) = @_; or my $foo = shift; my $bar = shift;
I find the former infinately more readable. It collects the parameters in one place, and looks like a traditional argument list.

for (@array) { ... } or foreach (@array) { ... }
I consistantly use for for (;;) loops and foreach for () loops. Self-documenting again.

'simple string'; or "simple string"
The former. Why make extra work for the compiler.


As you can see, I really try to write self-documenting code. I hate writing comments, which is my biggest flaw as a coder, but I try to mitigate it through clear code. I use good variable and procedure names, consistant formatting (yay emacs!), and clear structure. These go thing as far as copious comments in making your code more maintainable.
Ans I know that they don't replace good commenting, but I am getting better at that, really...

-pete
"Pain heals. Chicks dig scars. Glory lasts forever."

Replies are listed 'Best First'.
Re: Re: Style, style, style
by cybear (Monk) on Sep 10, 2002 at 15:53 UTC
    Dear Dread,

    I totally agree... except...
    for (@array) { ... } or foreach (@array) { ... }
    I consistantly use for for (;;) loops and foreach for () loops. Self-documenting again.

    What??

    - cybear

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: note [id://195962]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others scrutinizing the Monastery: (4)
As of 2024-04-24 13:11 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found