Beefy Boxes and Bandwidth Generously Provided by pair Networks
Welcome to the Monastery
 
PerlMonks  

Re^5: Generate the perl sequence 1, 11, 111, ....

by monarch (Priest)
on Oct 19, 2008 at 12:09 UTC ( #718047=note: print w/ replies, xml ) Need Help??


in reply to Re^4: Generate the perl sequence 1, 11, 111, ....
in thread Generate the perl sequence 1, 11, 111, ....

I would agree with the printf being a trap without a formatting string. However I would disagree that C-style for loops are more error-prone than the double-dot operator. I disagree, however, that c-style loops are harder to understand.

I personally find it much harder to mentally parse the for my $i ( 1 .. $counter ) because it forces me to remember whether the .. operator is a toggle or a list generator, and then I have to wonder if list generation is less efficient than the C-style comparison and increment operators.


Comment on Re^5: Generate the perl sequence 1, 11, 111, ....
Select or Download Code
Re^6: Generate the perl sequence 1, 11, 111, ....
by ikegami (Pope) on Oct 19, 2008 at 16:41 UTC

    C-style loops typically involve 3 variables, 3 operators plus "my" and 2 constants.
    Perl-style loops typically involve 1 variable, 0 operators plus "my" and 2 constants.

    Aside from the studies showing a relation between code length and the chance of there being a bug, aside from my personal experience of C-style loops being one of the biggest source of bugs, I don't see how you can argue that something that has so many more elements to parse is easier to read.

    it forces me to remember whether the .. operator is a toggle or a list generator

    Well that's simple. The .. operator is always used to generate a list.

Log In?
Username:
Password:

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

How do I use this? | Other CB clients
Other Users?
Others contemplating the Monastery: (7)
As of 2014-09-18 23:13 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    How do you remember the number of days in each month?











    Results (126 votes), past polls