Beefy Boxes and Bandwidth Generously Provided by pair Networks
Think about Loose Coupling
 
PerlMonks  

Re: Golf Soccer Stats

by boo_radley (Parson)
on May 23, 2002 at 17:58 UTC ( [id://168852]=note: print w/replies, xml ) Need Help??


in reply to Golf Soccer Stats

52 inside the sub:
print join "\n",&ss (10,19); sub ss {($p,$o)=@_;$t=$o%3;$w=($o-$t)/3;$l=$p-$t-$w;$w,$l,$t}

Replies are listed 'Best First'.
Re: Re: Golf Soccer Stats
by jynx (Priest) on May 23, 2002 at 19:22 UTC

    For some reason,

    Many people believe that the shortest way to get arguments is either all at once or not at all. Usually i have found this not to be the case. For instance, coupling your statements with your argument pulling i get 46:

    sub ss{ #23456789_123456789_123456789_123456789_123456789_ $l=-($t=$_[1]%3)-($w=(-$t+pop)/3)+pop;$w,$l,$t }
    And if i couple the assignments with the return statement, i can shave off another 8:
    sub ss2{ #23456789_123456789_123456789_123456789_123456789_ $w=(-($t=$_[1]%3)+pop)/3,-$t-$w+pop,$t }
    They seem to test out correctly, but i didn't test all that extensively (engineer's test: if it works 3 times for 3 different input it must work for everything :)

    jynx

    update: it strikes me that i am using a personal definition that i should elaborate on slightly. i think of "pulling arguments" as using pop, shift, or @_ to take an argument out of @_ and assign it to another variable. Not doing so is using $_[$x] directly throughout.

Log In?
Username:
Password:

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

How do I use this?Last hourOther CB clients
Other Users?
Others pondering the Monastery: (5)
As of 2024-03-28 13:19 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found